Troubleshooting: HFix-5059 corrects Rules Assembly Cache issues
Updated Solution — Article 44091
This article is superseded by Article 44091, Troubleshooting: PRPC 6.2 SP2 runs wrong rule or fails to see a new function after application enhancement (HFix-6560, HFix-6647).
Refer to Article 44091 for the best solution for this issue.
HFix-5059 corrects the following regression defects in PRPC 6.2 SP2:
- Rules Assembly Cache race condition caused application deadlock and pulse NPE.
The hotfix introduces a new synchronization policy that prevents RACacheImpl.find and invalidation from running concurrently. Invalidation is protected via a ReentrantReadWriteLock to ensure single threaded access to critical areas of the code. Rules Assembly Cache lookups (via find() ) and assemblies are concurrent.
- NPE was detected in addEntryToMemoryCache under heavy assembly loads.
The hotfix prevents assembly failure for high-volume loads.
- Rule-Declare-Expressions were not invalidated in the database. Incorrect invalidation can result in the wrong rule being executed.
The hotfix corrects this problem.
The hotfix post-installation steps are critical: You must truncate the specified tables and restart the server and the application.
- Go to Hotfix Self-Service.
- Specify the version as PRPC 6.2 SP2.
- Find, select, and download HFix-5059.
- In PRPC, run the Update Manager – Hotfix Installer to install HFix-5059.
- After installing the hotfix, stop the application server and truncate the following tables:
- Restart the application server and the PRPC application.