SR-D24261 · Issue 492559
Updated retry for context registraton
Resolved in Pega Version 8.4
The system was intermittently hanging after importing zipped files. Investigation showed that Batch threads were becoming stuck in AuthorizationContextManagerImpl.setSpecializations() due to a 'while' loop in setSpecializations that was seeking to register the new context. To resolve this, logic has been added which will try to register up to 10 times. If for any reason it can't register, the system will just return the unregister LAC. The check before deregister has also been enhanced and now will only deregister if the new context and the current context are different. It will not call register if the current context and the new context are the same.
SR-D25163 · Issue 504612
Improved query efficiency for bulk processing
Resolved in Pega Version 8.4
Spikes were observed in Library Cache usage. These were traced to queries that originated from Agent 'AgentBulkProcessing' and the activity 'PzAgentBulProcessing' that used "like" and "as", which were not performance efficient in a large-scale installation. The queries in the CheckBulkProcessQueue activity have now been updated to improve performance.
SR-D28985 · Issue 498017
Improvements made to Excel data import handling for decision tables
Resolved in Pega Version 8.4
On importing an Excel file into a decision table, the values modified in Excel were getting updated even though the rule was checked in after the import. Investigation showed that the API which handled converting the imported Excel file for use on the clipboard was defaulting to save actions if the rule was not checked out or in private edit before the import. In order to prevent future issues, the following changes have been made in this area: The "Import" button will be enabled only after clicking on checkout button, and discarding the checkout will also discard any imported values. When checkout for the rule set is disabled, only the save option will be displayed on the decision table. When the import button is visible and enabled, imported values will not be preserved if Actions -> Refresh is used before saving. When rulesets are disabled, the decision table can only be private edited and at that time the save and import buttons will be visible. When private edit is visible, the import button will be in a disabled state.
SR-D28996 · Issue 520717
External Mappings set for History Rule tab of class display
Resolved in Pega Version 8.4
After creating a class rule with external mapping columns and saving the rule, attempting to restore the previous saved snapshot from the full history of the class rule resulted in the external mapping tab being displayed with empty rows. This was traced to "External mappings" not being set when displaying the History Rule, and has been resolved by adding a call to RULE-OBJ-CLASS!OPENDEFAULTS to set the mapping properties.
SR-D31734 · Issue 515657
XSS protection added for parameter page properties
Resolved in Pega Version 8.4
An XSS vulnerability was seen with the Edge browser when run on visibility on client check was enabled with dynamic layouts and some properties were accessed from parameter page. Because run on visibility on client check is not required in this scenario, is has been removed and the values will be accessed from the server instead.
SR-D33214 · Issue 514024
Added safeURL encoding for Japanese characters in attached filenames
Resolved in Pega Version 8.4
It was not possible to preview a Japanese-titled PDF file attached on a work object. Investigation showed that in case of Japanese characters, file names were not being correctly encoded during the fetch request when JBoss was used. The retrieval worked correctly under Tomcat. In order to ensure consistent encoding, the safeURL API will be used for constructing the URL and for the activities DisplayAttachFile and pzDownloadFromRepository which add the ContentDisposition header.
SR-D33227 · Issue 510826
Check added for lock expiration when using Save for Default locking
Resolved in Pega Version 8.4
With the default case locking policy, during the process from creating a Case Object to Submit it was possible for multiple users to edit and save the same work object if the lock expired for the original user. No warnings appeared. To resolve this, handling has been added for a lock expiration scenario: previously, Save for Default locking was not considered. This has now been updated with a check that will evaluate whether or not the lock is gone before attempting to save.
SR-D33359 · Issue 505774
SelectAll properly applied to only the page selected
Resolved in Pega Version 8.4
In repeating grid, applying SelectAll on one page resulted in it being applied to the next page as well even though all records in the other page were not selected. Investigation showed that on change, the 'when' condition added to refresh the list was always false. To resolve this, the condition in section pzBulkProcessingCheckbox which refreshes the list once the checkbox is changed has been removed.
SR-D36636 · Issue 503462
Check added to resolve WrongModeException in Work-.Reassign
Resolved in Pega Version 8.4
An agent was failing due to a WrongModeException specific to the out-of-the-box activity "Work-.Reassign". Investigation showed that in the activity "Work-.Reassign" step no 15, there was an assumption that if the property pxFlow existed then newAssignPage.pxFlowName must also exist: if it didn't, invalid pages were created in pyWorkpage.pxflow. To resolve this, a check for the existence of newAssignPage.pxFlowName has been added.
SR-D38306 · Issue 507992
Deleted operator details stored in history table
Resolved in Pega Version 8.4
Pegaunit automation has been added for the pxAddHistoryToTempObject activity to allow the retrieval of detailed operator records in the pr_history_data table.