Troubleshooting: PRPC fails to run updated rule (NoSuchMethodError)
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.
Summary
If you installed HFix-5977 and you use the Rule Assembly Common Log in prlogging.xml, you may encounter the exception NoSuchMethodError. Additionally, after checking in an update to a rule or after importing an updated rule, the update to the rule is not saved by PRPC. Follow the Suggested Approach to prevent these problems.
Error
Caused by: java.lang.NoSuchMethodError: com.pega.pegarules.generation.external.cache.
FUAEntry.getPersonalKeys()Ljava/util/HashMap; at com.pega.pegarules.generation.internal.cache.
RACommonLog.addEntryToMap(RACommonLog.java:288) at com.pega.pegarules.generation.internal.cache.
RACommonLog.captureEntryInMap(RACommonLog.java:269) at com.pega.pegarules.generation.internal.cache.
RACacheImpl.dropFUAEntryFromCache(RACacheImpl.java:2542)...
Explanation
You see the Java exception when you try to remove entries from the Rule Assembly Cache, including removing the problematic rule from the Rule Assembly Cache manually, or if you update that rule and try to check it in. HFix-5977 does not include a compatible RACommonLog.class. The consolidated Rule Assembly Common Log is sometimes requested for debugging Rules Assembly Cache issues and HFix-5977 provides an interface for it. HFix-6560 includes the compatible RACommonLog.class.
Additionally, sporadic issues with Rule Assembly Cache invalidation are corrected by HFix-6647. Debug logs indicated a problem in FUA reloading on startup.
Suggested Approach
To resolve the problems described in this article, follow these steps to install the hotfixes that provide the complete solution:
- Download HFix-5535 from Hotfix Self-Service and install it using Update Manager.
- After installing HFix-5535 and running PRPC, you might see this error:
- If you see the error, take the following actions:
- Stop the application server.
- Delete the file PegaRULES_Extract_Marker.txt.
- Restart the application server.
- Download HFix-6560 from Hotfix Self-Service and install it using Update Manager.
- Download HFix-6647 from Hotfix Self-Service and install it using Update Manager. This hotfix includes HFix-5977 as a dependent hotfix.
Additional Information
HFix-5977 delivers Conclusion Cache optimizations and related core engine updates
Working with the Rules Assembly Cache
What is the Update Manager utility?
How to use the Static Assembler utility to pre-assemble the rules in an application