INC-173068 · Issue 654064
HTML tags escaped in Audit History field values
Resolved in Pega Version 8.4.6
The case narrative section was showing case statuses with encoded special characters such as % or ( ), resulting in entries such as "Status changed to Complete &# 40;approved& #41; !@#$ %^& amp;*&# 40;&# 41;_&# 43;.". This has been resolved by updating the PyMemo field from type Text Input to DisplayAsLiteral for case narrative, which matches the setting for case history.
INC-175882 · Issue 658642
Updated bulk action audit history logic and security
Resolved in Pega Version 8.4.6
After update, using the standard bulk action feature did not record an audit history entry for the SLA action on a case. This was traced to changes made around authorization for opening worklists when using pzBulkProcessItem that limited the audit history to reassign, transfer or transfer assignment, and has been resolved by updating the login the Work-pzBulkProcessItem activity. In addition, the Require authentication to run checkbox has been enabled on the Security tab of the activity, and the Allow invocation from browser checkbox has been disabled.
INC-177183 · Issue 660537
Refresh assignment checks updated
Resolved in Pega Version 8.4.6
Additional privilege checks have been added to refresh assignment.
INC-178650 · Issue 673550
Cross-site scripting protections updated
Resolved in Pega Version 8.4.6
Cross-site scripting protections have been updated around the DisplayAttachment function.
INC-183947 · Issue 673735
Query split added to handle Oracle expressions limit
Resolved in Pega Version 8.4.6
The PXCHECKFLOWDEPENDENCIES activity was throwing the Oracle error message "ORA-01795: maximum number of expressions in a list is 1000" when a case had a very large number of sub-cases, causing a failure in trying to submit additional child cases which sent them into the broken process. This has been resolved by updating the pxCheckFlowDependencies rule to break down the query parameter into batches of 999 so they can be handled by Oracle.
INC-184271 · Issue 668414
Portal Header persists appropriately
Resolved in Pega Version 8.4.6
The Portal header was disappearing immediately after case attachments were opened from the right sidebar and did not reappear even after refresh. This was traced to the absence of pd(event), and has been resolved by adding pd(event) to the onclick attribute in the anchor tag in the attachment UIKit rules.
INC-174781 · Issue 655123
Kerberos authentication added for external Cassandra
Resolved in Pega Version 8.4.6
Support has been added for Kerberos authentication with Cassandra.
INC-175207 · Issue 664362
Added handling for DSM Services stuck in leaving status after database outage
Resolved in Pega Version 8.4.6
During a database outage, the heartbeat would fail and DSM services would eventually try to enter safe mode and stop. As the first step they would try to change the state to LEAVING, but because the database was down saving the LEAVING state failed and the exception was not handled correctly. This resulted in the rest of the stop operation logic not being executed and the service being stuck in LEAVING. To resolve this, an update has been made to ensure the service goes to LEAVING_FAILED if anything fails during the stop operation including when setting state to LEAVING_FAILED. The state LEAVING_FAILED will get flushed to the database eventually when it comes back up. This will allow the aggregation service to start from the LEAVING_FAILED state and recover by itself after a database outage.
INC-176757 · Issue 657786
Interaction History properly saved when running strategy on a different data flow
Resolved in Pega Version 8.4.6
Customized Interaction History properties that had been added to pyInteractionHistoryConfiguration and pyDefaultWorkingSet and saved into the PR_DATA_IH_FACT table were not being saved properly after upgrading from 7.3 to 8.3. This was a missed use case and has been resolved.
INC-177877 · Issue 661175
Write lock check added to avoid thread contention
Resolved in Pega Version 8.4.6
After updating the Pega platform and NBA Designer, a significant drop in performance for multilevel strategies was observed. Investigation showed that invoking a sub strategy containing external input intermittently caused a thread contention issue related to write lock. This was traced to overzealous write locking of a component where only a read lock for the thread was required, and has been resolved by adding a verification check to determine whether a write lock is necessary for a given operation before acquiring it.