Skip to main content

This content has been archived and is no longer being updated. Links may not function; however, this content may be relevant to outdated versions of the product.

Support Article

Performance degrades after update to Pega 7.2.1 (RUF Assembly)

SA-32597

Summary



After updating their Pega 7.x systems to Pega 7.2.1 (with Oracle JRE 1.8), users see performance degradation during a load test. Their analysis finds that the database table <rule schema>.pz_assembledclasses is updated for each Service REST invocation. This degrades performance.

To perform their root cause analysis, the users ran the following query, which shows the updates to the <rule schema>.pr_assembledclasses table for the Pega-RULES:DecisionTable and the Pega-RULES:Sort libraries.

select * from <rule schema>.pr_assembledclasses where pzpackage = 'com/pegarules/generated' and pzclass in ( 'pega_rules_decisiontable.class', 'pega_rules_sort.class')

Error Messages



Not Applicable


Steps to Reproduce

  1. Query the <rule schema>.pz_assembledclasses table and sort by the pzLastModified column in descending order.
    Note the record and value of the pzLastModified column.
  2. Invoke the Service REST rule that references a library function rule.
    This can be any operation, not just the Service REST calls.
  3. Query the <rule schema>.pz_assembledclasses table and sort by the pzLastModified column in descending order.
  4. Unless there is a rule change, there should be no change in the pzLastModified value returned rows compared to the value returned by the query in Step 1.


Root Cause



A defect in Pegasystems’ code or rules

There is an unnecessary library compilation by the SORT action in the Data Transform rule. The expected behavior is that, unless there are changes in the library or function rules, the library rule should not be assembled and compiled for an invocation; it should use the existing assembled version of the rule.

In the case reported here, for each Service REST invocation, the library is compiled and stored in the database. This causes performance to degrade and get worse, depending on the number of nodes. The more nodes, the greater the performance degradation.

You can see this in the <rule schema>.pz_assembledclasses table, where the assembled rules are saved and the pzLastModified column is changing for each invocation, indicating that the rule is being repeatedly assembled and saved.

Resolution



Update or upgrade to the latest release of the Pega Platform.
If you cannot update or upgrade your Pega deployment, apply HFix-31073.
You must restart the JVM for the hotfix to take effect.
See also Pega 7.2.2 SA-32475, https://pdn.pega.com/support-articles/performance-degrades-after-update-pega-722-ruf-assembly.

Published April 26, 2018 - Updated October 8, 2020

Was this useful?

100% found this useful

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.

Did you find this content helpful?

Want to help us improve this content?

We'd prefer it if you saw us at our best.

Pega Community has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice
Contact us