SR-D39003 · Issue 505998
Threads will be updated to maintain assembly context when using Static Assembler
Resolved in Pega Version 8.4
When running the Static Assembler utility from UI, the assembler process completed successfully but the PegaRULES.log was flooded with the FATAL exception "Usage error - next Executable not based on current". This error was generated from com.pega.pegarules.session.internal.mgmt.Executable constructor, and indicated an issue with the thread context being different from the assembly context. To resolve this, the system has been modified to update the context of thread to what is expected as assembly context.
SR-D42241 · Issue 518640
CyberArk support has been added for this release
Resolved in Pega Version 8.4
CyberArk support has been added for this release.
SR-D43131 · Issue 511062
Page section page map entries initalized for private checkout
Resolved in Pega Version 8.4
Attempting to check out any rule in the development environment resulted in a null pointer error. Investigation showed this was due to the Page Section page map entries not being initialized, causing an exception in the activity pzperformprivatecheckout where obj-save is performed. This has been corrected.
SR-D43347 · Issue 509038
Multi-nodes rebuild LibraryMetadata to ensure all Rule-Utility-Functions are present on change
Resolved in Pega Version 8.4
When performing a complete Application import into a clean installation, references to certain Rule-Utility-Functions went unresolved during the initial assembly. Investigation showed that after introducing a new Rule-Utility-Library or Rule-Utility-Function on one node in a cluster and then generating that, the other nodes in the cluster did not have the correct LibraryMetaDataCache for that Rule-Utility-Library.Therefore assemblies on those other nodes could be bad and throw a runtime UnresolvedAssemblyError. This has been resolved by modifying the way the Library subsystem processes the node changes events for Library Generation to ensure that each node completely rebuilds the LibraryMetadata for that Rule-Utility-Library so it contains all the Rule-Utility-Functions.
SR-D43918 · Issue 511183
Resolved duplicate task urgency
Resolved in Pega Version 8.4
Duplicate task urgency was displayed when using dynamic layout in non-template mode. Investigation showed that there were three 'when' rules used to display the task urgency based on an urgency value, and two of the 'when' rules were being returned as true, one of which was incorrect. This was due to an incorrect PropertyReferenceImpl object being passed when retrieving the value from the failSafe page because of an incomplete reference, and has been fixed.
SR-D44117 · Issue 510703
Multi-nodes rebuild LibraryMetadata to ensure all Rule-Utility-Functions are present on change
Resolved in Pega Version 8.4
When performing a complete Application import into a clean installation, references to certain Rule-Utility-Functions went unresolved during the initial assembly. Investigation showed that after introducing a new Rule-Utility-Library or Rule-Utility-Function on one node in a cluster and then generating that, the other nodes in the cluster did not have the correct LibraryMetaDataCache for that Rule-Utility-Library.Therefore assemblies on those other nodes could be bad and throw a runtime UnresolvedAssemblyError. This has been resolved by modifying the way the Library subsystem processes the node changes events for Library Generation to ensure that each node completely rebuilds the LibraryMetadata for that Rule-Utility-Library so it contains all the Rule-Utility-Functions.
SR-D44857 · Issue 510735
Node level data page now specifies tenant name in MT environments
Resolved in Pega Version 8.4
In order to address a requestor contention between different tenants during the load of node level data page in multi-tenant environments, an enhancement has been added that will specify the tenant name in the data page name. This will improve performance by allowing different tenants to have different locks, ensuring the process of data page loading on one tenant will not make another tenant wait for the loading of the same data page. Additional debug and trace logging has also been added to provide more information related to declarative rule cache management.
SR-D44878 · Issue 510732
Node level data page now specifies tenant name in MT environments
Resolved in Pega Version 8.4
In order to address a requestor contention between different tenants during the load of node level data page in multi-tenant environments, an enhancement has been added that will specify the tenant name in the data page name. This will improve performance by allowing different tenants to have different locks, ensuring the process of data page loading on one tenant will not make another tenant wait for the loading of the same data page. Additional debug and trace logging has also been added to provide more information related to declarative rule cache management.
SR-D45622 · Issue 521662
Sorting on Grid works with declare expression property
Resolved in Pega Version 8.4
If a property with a declare expression was used in a column, the sorting on that column was not working. This was traced to reference errors when Grid used the engine API pega.sortPageList to sort the page list / data page, and has been corrected.
SR-D47752 · Issue 513752
Resolved Assembly time error for findPage signatures with two arguments
Resolved in Pega Version 8.4
Due to the introduction of IL assembly, an Assembly time error was generated after upgrade when saving a 'when' rule that had a page with the same name defined in both Parameters and Pages & Classes. To resolve this, if the system is generating PegaAPI#findPage or PegaAPI#findPageWithException and passing a null as the second argument, then it will be cast as a String. This will ensure the compiler will not become confused as to the type of null when there are multiple findPage signatures with two arguments.