If you are using TCP locators in a LiveCycle cluster with ES3 (10.0.2) and have installed a service pack or patches on top of this version, you may notice some errors in the server log similar to the following:
com.adobe.livecycle.cache.CacheRuntimeException: Error loading cache configuration
Caused by: com.gemstone.gemfire.SystemConnectException: Attempt to connect to distributed system timed out
If you have a UDP-based cluster caching mechanism, you are not affected by this issue.
This issue occurs when the Gemfire version on the server is different from the Gemfire version used by the TCP locators. Gemfire.jar and GemFireVersion.properties are delivered in two different places in the LC installation – 1. Core EAR 2. /lib/caching directory.
Gemfire version 126.96.36.199 was used for LC ES3 (10.0.2). To address some known issues a new Gemfire version (188.8.131.52) was used in later versions and patches. This newer Gemfire version was used for the Core EAR, but unfortunately not included for updating the caching directory.
To verify the issue, compare the Gemfire version in the GFLocator.log file for your TCP Locator with the Gemfire version in the Gemfire logs for your application server at the following location:
- JBoss: <adobe_temp_dir>/adobejb_<server_name>/caching/Gemfire.log
- Weblogic: <adobe_temp_dir>/adobewl_<hostname>/caching/Gemfire.log
- WebSphere: <adobe_temp_dir>/adobews_*/caching/Gemfire.log
You will find that Gemfire on the LiveCycle server has a higher version.
This issue has been addressed in SP2 and later patch versions.
Note: the patch installer will only update the default caching directory (<lc_install_dir>/lib/caching) on the machine where LC is installed. If you are running LC on various machines, and/or use custom caching directories, you will need to update the 2 Gemfire files for your TCP locators manually. All TCP locators need to be restarted before starting LC servers.
For existing patches you can use the following workaround to fix the issue on your LiveCycle installation.
- Stop the LiveCycle server(s).
- Stop the TCP Locator(s).
- Go to <LC_INSTALL_DIR>/deploy folder.
- Open adobe-core-<appserver_name>.ear.
- Go to TCP locator installation directory. Typically the default location is <LC_INSTALL_DIR>/lib/caching.
- gemfire.jar and GemFireVersion.properties can be found here.
- Replace the two files above in the TCP locator with the same files from the core ear.
- Repeat the replacement procedure (steps 5 – 7) for each TCP locator.
- Start TCP Locator(s).
- Start LiveCycle server(s) in the Cluster.
Verify the Gemfire versions in GFLocator.log and Gemfire.log files. You should see the same Gemfire version in both files.