SR-C6280 · Issue 348100
Performance improvements for pyNavigation page cleanup
Resolved in Pega Version 7.4
In order to improve performance, the cleanup of pyNavigation pages has been tuned to reduce memory footprint.
SR-C631 · Issue 345886
DB query performance improvement
Resolved in Pega Version 7.4
Performance improvements have been made by removing unnecessary steps that performed DB queries when packaging cases with no offline attachment support.
SR-C6941 · Issue 351037
Rollback information collection optimization
Resolved in Pega Version 7.4
During rollback information collection, a rule inventory is regenerated. This checking can include searching for instances that no longer exist in the database, potentially causing performance issues. In order to optimize the function and reduce unneeded logging, the rollback information collection process has been updated to reuse the rule inventory.
SR-C7394 · Issue 349357
getJSON API performance improvements
Resolved in Pega Version 7.4
Clipboard sorting of the JSON fields returned from the sync call was causing performance issues. To resolve this, the getJSON API has been refactored to improve performance.
SR-C757 · Issue 343486
Empty hidden elements stripped when AAR proxy in use
Resolved in Pega Version 7.4
When using IIS WebServer and AAR proxy configuration with high security settings, submitting a form through Microsoft Internet Explorer with hidden input fields that did not have a name attribute resulted in a blank parameter name and value being added. This formed an invalid request that returned a HTTP 200 with no error message. Because Microsoft Internet Explorer does not ignore elements which have empty names, the code has been updated to remove name attributes on pycustomerrorsection hidden elements.
SR-C8392 · Issue 350041
Refactored file loading tools for consistent URL escapes
Resolved in Pega Version 7.4
The .properties file was generated with the wrong rest URL due to handling differences for escaped URLS. The file loading tools have now been refactored to use a common interface for handling escapes.
SR-C8662 · Issue 351473
Corrected Boolean option documentation for BIX
Resolved in Pega Version 7.4
In the user Guide for BIX, the "Optional command-line BIX parameters" section states the -B option affects how Boolean values are published, giving '01' as a valid option. However, attempting to use it generated a runtime exception stating that it was an unsupported value. This issue was caused a documentation error, and the files have now been updated to correctly indicate the option is "10".
SR-C8899 · Issue 333268
ABAC exception handling added
Resolved in Pega Version 7.4
After creating an access control policy and access control policy condition on a data class that shows in the Data Explorer, defining the condition such that it was always false and then clicking on the class on which the policy was just defined generated an error. If the policy was withdrawn and then clicked on again, it appeared as expected. This was reproducible only when ABAC was enabled, and handling for an exception generated in this scenario has been added.
SR-C9767 · Issue 350619
Object contention resolved to improve getPOJO performance
Resolved in Pega Version 7.4
Object pool contention issues were seen related to getPOJO and getDelegate. This was traced to the legacy class GenericObjectFactoryPool, where a hashmap was being guarded with a synchronized block for multi-thread access. This process has now been replaced with a concurrenthashmap to do the same but with thread contention.
SR-B66932 · Issue 334833
Indexes created on a MT system automatically contain pzTenantID column
Resolved in Pega Version 7.4
When installing PDC on a multi-tenant system the pzTenantID column is automatically added to every application table (pegaam_*). This is expected. However, the indexes contained in the schema jar were not automatically extended to contain the pzTenantID, which created the need to manually update all indexes post-install to include the pzTenantID column on the first place. A similar problem existed when updating to a newer version of PDC that contains schema changes. This has been addressed by adding MultiTenantPolicy and Import/Default concrete classes that inform DatabaseSchemaGenerator.IndexElement whether or not to include pzTenantID in the column list. During Import, pzTenantID will be added to all indexes on shared context tables. In other utilities (UAS, clone table, etc.) the column will only be added to primary key and unique indexes/constraints (existing behavior).