Tag Archives: loadrunner

Initialization of the ALM Octane Server

If you are not getting past the initialization of the ALM Octane Server and getting database connection issues like

error: url=’jdbc:mercury:sqlserver://192.168.10.190:1433′, dbType=MSSQL, userName=’sa’]. Error: Connections could not be acquired from the underlying database!

The root cause for this is the SQL services.The SQL Agent and Browser are not running, causing the connection issue between the DB and the Octane server.

Advertisements

Copy test with requirement coverage

User wants to have all the test cases with the linked requirement from 3 different projects to one new project.

• Go to Management module (old projects)
• Go Libraries
• Create a new Library
o Select all the requirements
o Select ‘Test covering selected requirements’
• Create a baseline
o Check the logs

TARGET PROJECT:
• Import a library
• Check the logs
This copies the test and its requirement coverage as your user has requested.

The CREATE UNIQUE INDEX statement terminated because a duplicate key was found for the object name ‘dbo.LISTS’ and the index

Migrated our HP ALM to new windows server and sql server. Was able to migrate HP ALM to version 12.55 however projects fail to upgrade.

Getting the below error message after upgrading a project,

Exception occurred. Message: [Mercury][SQLServer JDBC Driver][SQLServer]The CREATE UNIQUE INDEX statement terminated because a duplicate key was found for the object name ‘dbo.LISTS’ and the index name ‘LS_LOGICAL_NAME_IDX’. The duplicate key value is (hp.qc.plan-status.imported).
Failed SQL: /* ~~QC */ CREATE UNIQUE NONCLUSTERED INDEX [LS_LOGICAL_NAME_IDX] ON [LISTS]([LS_LOGICAL_NAME])

In this case the issue is because there is a duplicate key in [dbo].[LISTS] table.

You may need to run the following query in order to identify which is the duplicated one : select * from [dbo].[LISTS] where ls_logical_name=’hp.qc.plan-status.imported’

In this case it seems that the value for the LS_NAME had been modified, the default value is "Imported" and in your case is "Feedback Provided".

So the application notices the original value does not exist so it insets it (as seen in the last upgrade attempt, after running it another one was created) and consequently this causes the index duplicate error.

For fixing this issue it is necessary to update the LS_NAME to the original value, then run the upgrade process and later you can update the records again and have the customized as desired. This will not affect the data that is already in the entities .

After that you may need to follow the next steps in order to resolve the issue:

To update the records a simple query like this can be used:
Update [td].[LISTS] set LS_NAME ‘Imported’ WHERE LS_ID = ‘355’

HPE Diagnostics User Interface freezes or hangs

Having launched the HPE Diagnostics User Interface (UI) by clicking on “Open Diagnostics” (or “Open in This Window”) and entering a user name and password, performing an action such as viewing the data for long periods (days or weeks) for all Java Probes may result in the UI freezing and no further actions being possible. This issue may occur in a larger Diagnostics environment where there are many Mediators and numerous probes.

Once the Diagnostics UI has frozen no recovery is possible and the browser tab displaying the UI must be closed. The UI can then be opened in a separate browser tab (or new browser instance) however it is likely that the freeze behavior will re-occur.

A possible cause is that the Java applet which runs the Diagnostics UI has insufficient memory such that while the UI is performing the user action, the applet process runs out of memory and terminates. When this process terminates, the UI remains visible in the browser but is no longer functional.

To confirm that the Java applet process is terminating, open the Windows Task Manager and locate the process named “jp2launcher.exe”. This process will appear while the Diagnostics UI is being initialised (after the user name and password are validated):

image text

If the “jp2launcher.exe” is no longer visible when the Diagnostics UI freezes, then the process may have run out of memory.

A workaround for this issue is to increase the heap (memory) available to the Java applet. This can be done by modifying the Java runtime parameters as follows:

1) Open the Windows Control Panel and search using “Java” to locate the “Java (32-bit)” Control Panel entry. Click on the entry to open the Java Control Panel:

image text

Note: If there is no “Java (32-bit)” Control Panel entry this may be due to there being multiple Java versions installed on the client platform. Locate the Java 32-bit installed in a folder under “C:\Program Files (x86)” (typically “C:\Program Files (x86)\Java\jre7\bin”) and execute the file “javacpl.exe” using right-click “Run as administrator”.

2) Click on the “Java” tab and then on the “View” button to open the “Java Runtime Environment Settings” dialog.

3) The default heap size is typically 256MB however this may be system dependent. The actual process memory size can be seen in the Windows Task Manager before the process terminates. Specify a larger heap size and test to see if the UI freeze remains present – increase as needed. The following example confgure a 700MB heap however up to 1GB (“-Xmx1G”) may be used (as this is a 32-bit process memory is limited):

image text

LoadRunner Upload – Download file / Operative System 4 GB Memory Limitation

Each operating system has a physical memory limit which reciprocally define the boundaries for memory and address space that can be used by the processes, services, objects and services executed over the current operative system version.

Following is the memory limits that are present in Windows OS and how it affects the mdrv.exe process emulation when uploading/downloading large files, generating a reaction where the mdrv will crash, hangs or result in a memory violation.

 The implementation of LR file uploading/downloading is not optimized for huge file. It always reads all the files to memory before upload. That means, for files with 1 GB in size, mdrv has to   obtain 1 GB sequential memory space in the process for each Vuser. However, mdrv is a 32 bit process. In windows system, a 32 bit process has at most 4 GB in memory space, and only 2 GB of them can be used by developer. If the user tries to upload a file with 2 GB in size, it is almost impossible to find proper memory for it, since the other functions will also use some memory.

When the file size is smaller, like 500 MB to 1 GB, it will be possible to make the upload successful. But when we run the script in controller, we should make the Vuser run in process mode.

From the Operating System perspective and as a workaround it is possible to switch the memory use and memory address space allocation to 3 GB for the application and less 1 GB for the operating system.

In order to increase the memory and address space to 3 GB limit we need to be implement the following steps.

  1. Right-click on the Command Prompt icon in the Accessories program group of the Start menu. Click Run as Administrator.
  2. At the command prompt, enter:

bcdedit /set IncreaseUserVa 3072

  1. Restart the computer.
  2. Run the script one more time in VuGen and in the Controller using the LG as process.

For disabling  the  memory increase here is the command.

  1. Right-click on the Command Prompt icon in the Accessories program group of the Start menu. Click Run as Administrator.
  2. At the command prompt, enter:

bcdedit /deletevalue IncreaseUserVa

  1. Restart the computer.

Error -27732: Internal Error – can’t get initial credentials for username/password

The following error appears in web based protocol replay:

Error -27732: Internal Error – can’t get initial credentials for username/password

Wrong configuration of the required elements to make the script replay while using Kerberos authentication

Wrong username password:

  1. In the script go to the web_set_user function
  2. Verify that the username and password specified are correct

Wrong KDC IP:

  1. Open the windows environment settings
  2. Check the krb5.ini location specified in KRB5_COFIG
  3. Open the krb5.ini in an editor
  4. Check the KDC IP specified is as seen in wireshark recording of the application

Error -27732: Internal Error – can’t parse username

The following error message appears during the replay of web based script:

Error -27732: Internal Error – can’t parse username

The KRB5_CONFIG was defined under the System variables. Currently only exact path name is supported.

  1. Open the Windows’ Environment Variables
  2. Search for KRB5_CONFIG in System variables
  3. Verify the path is exact (For example don’t use %windir%)
  4. Correct and save the file path
  5. Restart VuGen