Out of Memory errors with LiveCycle ES JBoss turnkey installation
Issue
Out Of Memory (OOM) errors occur on an Adobe LiveCycle ES Update 1 JBoss turnkey installation. This issue is related to the MySQL JDBC driver version and the data source connection settings.
Caution: This update is strongly recommended.
Reason
Connection checking for the IDP_DS data source has been introduced in LiveCycle ES Update 1. Due to how connection checking is done by MySQL JDBC drivers prior to version 3.22.1 and how JBoss handles the validation result set, heap memory is being used with the JDBC driver, causing multiple open result sets. Because the JDBC driver installed as part of the turnkey installation is version 3.1.12, you must perform the tasks described in this article.
Solution
Obtaining and installing the JDBC driver
This section describes the tasks required to obtain and install the appropriate MySQL JDBC driver.
To obtain and install the driver:
- Obtain version 5.1.6 of the JDBC driver from the MySQL site by downloading the driver distribution kit mysql-connector-java-5.1.6.zip.
- Unzip the archive file and locate the mysql-connector-java-5.1.6-bin.jar file.
- Locate and delete the mysql-connector-java-3.1.12-bin.jar file in the [JBoss_root]\server\all\lib directory. The default location is C:\Adobe\LiveCycle8.2\jboss\server\all\lib.
- Copy the mysql-connsctor-java-5.1.6-bin.jar file to the [JBoss_root]\server\all\lib directory.
Changing data source settings
The data source settings as defined in the adobe-ds.xml file are intended for a heavy load with many concurrent connections and a long idle connection timeout (10 minutes). This results in a large number of prepared statements being cached on the heap. Reducing the idle connection timeout, the number of maximum open connections, and the size of the prepared statement cache for IDP_DS and EDC_DS will result in a reduction of heap memory allocated to the JDBC connections.
To modify the data source settings:
- Locate and open the adobe-ds.xml file in an editor. By default it is located in C:\Adobe\LiveCycle8.2\jboss\server\all\deploy.
- Locate the line
and change the value from 10 to 1.10
Note: Modify this value for both the IDP_DS and the EDC_DS definitions. - In the IDP_DS definition, locate
and change the value to 20. - In the EDC_DS definition, locate
and change the value to 10.Note: If the number of Rights Management requests is high, you may keep the default value for EDC_DS as 20.
- For both IDP_DS and EDC_DS definitions, locate
and change both values to 20.Note: Setting this value reduces the memory used by the cache and may need to be fine-tuned based on the transaction load on your system.
Changing JVM settings
The JBoss turnkey install sets a number of JVM arguments in the run.bat file and in the JBoss for Adobe LiveCycle ES service definition. After you have updated the JDBC driver, you can modify the run.bat file.
To modify the run.bat file:
- In a text editor, open the run.bat file located in C:\Adobe\LiveCycle8.2\jboss\bin.
- Delete the following arguments:
-XX:NewSize=500
-XX:MaxNewSize=500
-XX:SurvivorRatio=6If Content Services is not installed, the PermSize value can be reduced to 128 MB.
- Locate the
XX:PermSize
setting and modify the value to128M
. - Save and close the file.
To modify the JBoss for Adobe LiveCycle ES service definition you must uninstall and reinstall the service with new JVM arguments specified.
Changing the JBossService settings
The JBoss server is configured using a batch file, InstallJBossService.bat that is created during system installation. During the turn-key setup of LiveCycle, LiveCycle PDF Generator ES support for native document conversion is an optional feature. The batch file will vary slightly, depending on whether you have enabled this feature.
If during the installation you chose to include this feature, then you will have entered a username and password into the LiveCycle setup. You will need to use this username and password to complete the reinstallation of the JBoss service.
To uninstall and reinstall the JBoss for Adobe LiveCycle ES service:
- In a text editor, open the InstallJBossService.bat file located in C:\Adobe\LiveCycle8.2\jboss.
- Delete the following arguments:
-XX:NewSize=500
-XX:MaxNewSize=500
-XX:SurvivorRatio=6If Content Services is not installed, the PermSize value can be reduced to 128 MB.
- (Optional) Locate the
XX:PermSize
setting and modify the value to128M
. - Check if the last part of the .bat file contains
-user %1 -password %2
. If so, native document conversion has been configured and you will need to enter the username and password when you reinstall the service.Note: This is not the JBoss service user but the user credentials for the account used to install the native application software (such as Microsoft Office).
- Save and close the file.
Note: You will need the username and password that the service is using. To find the username, open the Services control panel, right-click JBoss for Adobe LiveCycle ES, select Properties from the menu and select the Log On tab. The same username and password combination should be used as during the original install.
- From the Services control panel, stop the JBoss for Adobe LiveCycle ES service.
- Verify that the service is not running in the Service control panel or by entering the following command:
JBossService -status "Jboss for Adobe LiveCycle ES"
The resulting message will indicate that the service has been stopped.
- From a command prompt, change to the C:\Adobe\LiveCycle8.2\jboss directory and enter the following command to uninstall the service:
JBossService -uninstall "Jboss for Adobe LiveCycle ES"
- Reinstall the service. If native document conversion is enabled you will specify the username and password by entering the following command:
InstallJBossService [domain\username] [password]
Where
[domain\username]
and[password]
are the credentials used during the original installation. If the ID is a local user, then it will be specified using the syntaxMACHINENAME\USERNAME
. A domain login ID must be specified asDOMAIN\USERNAME
.If native document conversion is enabled you will reinstall the service without specifying a login name using the following command:
InstallJBossService
- Verify that the service is running in the Service control panel or by entering the following command:
JBossService -status "Jboss for Adobe LiveCycle ES"
Version Info
LiveCycle ES Update 1 (8.2.1)
TechNote Details
Last Update: | 11-18-2008 |
ID: | kb406231 |
Permanent Link: | http://www.adobe.com/go/kb406231 |
well this memory erros really sucks
ReplyDeleteimprove your memory