SR-D56063 · Issue 528248
Hazelcast upgraded to resolve node startup issue
Resolved in Pega Version 8.4
Post data upgrade, the ADM tier failed to start and the error "java.lang.IllegalStateException: Node failed to start!" appeared. This was traced to a dormant bug in Hazelcast 3.11 that caused starting nodes to fail when the Hazelcast master node was shutting down, which was exposed by recent Pega changes made to enable parallel restarts of nodes in Cloud environments. Hazelcast delivered a fix for the parallel restart problem and the hotfixed jar has been merged into the platform. In addition, previous logic for loading Admin Studio waited 30 seconds before timing out when fetching information for each node. This caused issues with large clusters and Admin Studio not loading. The logic has been updated in the Admin Studio UI to load the page despite delays/issues waiting for nodes to respond to the gathering of cluster data, and the algorithm to detect remote-call timeout has been updated and is applicable to batch operation.
SR-D64090 · Issue 525866
Local UUID cache will be updated when merge event is detected
Resolved in Pega Version 8.4
Cluster-related issues were seen in multiple production clusters. For some nodes in the cluster the Cluster Management screen showed all expected nodes with valid Node IDs displayed, and on other nodes the Cluster Management screen showed the node ID of itself, SERVER@localhost:5701. On an impacted node displaying the wrong ID, the Node Information landing page did not work and displayed the error "Unable to execute job on ." Multiple advanced agents running on nodes in the affected clusters, both with correct and incorrect IDs, also failed with a similar error "Unable to execute job on <node's job id>". This was traced to a merge performed after a split brain. To resolve this, the code has been updated to handle merge events: when the node UUID is changed as part of a split brain recovery, the local UUID cache will be updated when the merge event is detected.
SR-D26204 · Issue 499093
Corrected Survey rule editing
Resolved in Pega Version 8.4
After creating a paragraph rule in Pega Survey questions, attempting to edit the question by opening the existing paragraph rule from the edit question modal window was not working and instead the option of creating a new rule was presented. Investigation showed that the Autocomplete control for showing paragraph, HTML section, and custom HTML was missing the AppliesTo parameter, causing the rule opener to fall back to the Create New Rule page. To resolve this, pyClassName has been added as a parameter to autocomplete controls.
SR-D15503 · Issue 486749
Added compatibility for UDFs
Resolved in Pega Version 8.4
Using UDFs against the pr_data_admin table was causing an exception when scrolling through the results. Investigation showed that UDFs were not able to read some instances in the database because the blobs were stored in an uncompressed format. This was due to instances generated during installs and upgrades being saved without compression, which was not a problem for the engine but caused errors when using optional added UDFs. In order to improve compatibility, the system has been updated so that system-generated instances during installs and upgrades, which are saved without the full engine, will use Compress.deflate to compress bytes before saving to the database.
SR-D16200 · Issue 494585
Support added for decimal values in RichTextDisplay HTML
Resolved in Pega Version 8.4
After upgrade, correspondence in Outlook was displayed with an incorrect left alignment and footer images were stuck together. This was caused by a difference in the Richtextdisplay mode, which was previously set to 'literal' and is now richtextdisplay.Issue. To resolve this, an enhancement has been added which supports decimal values for the HTML attributes.
SR-D20423 · Issue 503446
Improved upgrade handling for tables using classes with property references
Resolved in Pega Version 8.4
After upgrade, some page property values were blank and exposed database columns did not contain the values. Investigation showed that the reference properties did not have context and hence column population was not able to determine their value. To resolve this, instead of doing column population for all the columns, the system will identify classes that have property references and that are being optimized as part of upgrade process and maintain a list of specific columns to update.
SR-D21803 · Issue 502131
XSS protection added for embedded portal URI
Resolved in Pega Version 8.4
The URI used in the top window of embedded portals has been encoded to prevent DOM based XSS.
SR-D23862 · Issue 503897
Corrected test connection for LDAP AuthService using keystore
Resolved in Pega Version 8.4
When using a AuthService rule defined for LDAP using ldaps:// and a KeyStore rule that was defined to reference a local file in the server, the Test Connection button on the AuthService rule did not work and generated the following exception: "com.pega.apache.commons.httpclient.contrib.ssl.AuthSSLInitializationError: I/O error reading keystore/truststore file: null". Investigation showed that file reference keystore did not work with an LDAPS test connection because while run time used the LDAPVerifyCredentials activity, the design time validation used the activity “ValidateInfrastructure” which did not have the required code to support file reference keystore. This has been corrected.
SR-D25607 · Issue 495624
Added null-pointer exception handling to PegaInstaller
Resolved in Pega Version 8.4
When upgrading, the error "Error: java.lang.NullPointerException [java] at com.pega.pegarules.deploy.internal.exposecols.jobs.ExposeWrapper.runExposer" appeared and the installation would not proceed. Investigation showed that the null-pointer exception occurred because of class name validation not being performed at the right place. As the null-pointer exception occurred in the main class, it initiated thread pool executor shutdown. However, the consumer pool did not shutdown because it did not receive the correct specific producer message fto do so. This has been resolved by ensuring isValidClass is executed at the right place in ExposeWrapper.java to handle the null-pointer exception, and adding handling for the interrupt exception in consumer thread so that in case of any run time exceptions in the main thread, the consumer thread will not be stuck.
SR-D25711 · Issue 502136
Updated dependent role validation during rule deletion
Resolved in Pega Version 8.4
After checking out and attempting to private-edit the "PegaRULES:WorkMgr4" AR, the rule was still shown as checked out after the edit was discarded. This was a missed use case, as Private checkouts are generally not enabled for most of the customer rulesets. To resolve this, roles in private checkout and branch rulesets will be excluded from going through dependent role validation during rule deletion.