SR-C74858 · Issue 413604
Updates to controls and labels
Resolved in Pega Version 8.1.2
Issue 413604:When configuring a button with a disable condition, the condition was not returned in the readonly field. The PegaAPI has now been updated to support "disable". Issue 413597 / 413598: While calling the API to get the view of the screen as a JSON format, button type controls were not returning the label of the field using the OOB pxButton control. This has been fixed. Issue 413625: The PegaAPI section was missing when using clipboard page or data page with the rest method. To correct this, support for Embedded page has been added in the pyWorkPage for PegaAPI.
SR-C73608 · Issue 413625
Updates to controls and labels
Resolved in Pega Version 8.1.2
Issue 413604:When configuring a button with a disable condition, the condition was not returned in the readonly field. The PegaAPI has now been updated to support "disable". Issue 413597 / 413598: While calling the API to get the view of the screen as a JSON format, button type controls were not returning the label of the field using the OOB pxButton control. This has been fixed. Issue 413625: The PegaAPI section was missing when using clipboard page or data page with the rest method. To correct this, support for Embedded page has been added in the pyWorkPage for PegaAPI.
SR-C55082 · Issue 402920
Cassandra upgrade
Resolved in Pega Version 8.1.2
Cassandra has been upgraded from 2.1.14 to 2.1.20.
SR-C57130 · Issue 402934
TokenRangePartitioner modified to avoid Cassandra timeouts
Resolved in Pega Version 8.1.2
The previous DSS settings caused the DDS dataset on Browse to create thousands of partitions. This caused thousands of files to be created for a file dataset which uses a DDS dataset as input. In order to reduce the number of partitions while still being able to take advantage of the changes to ensure Cassandra always reads from the local node and thus avoid the timeout, the TokenRangePartitioner will now create composite partitions with multiple token ranges (up to 60) per partition. This will reduce the number of files created by a factor of 60 reducing the number of files created from 60 - 100. Additionally, timestamp accuracy issue and batching for single case data flows have been fixed.
SR-C62475 · Issue 402873
Improved security on attachments added in Case and Pulse
Resolved in Pega Version 8.1.2
Data-Content-Image instances were getting created for attachments added in Case and Pulse. Since Data-Content-Image doesn't correspond to security once they are cached, they could be accessed by any authenticated user. To correct this, extensions have been added to stop generating Data-Content-Image while creating a pulse attachment post or case attachment.
SR-C73100 · Issue 411034
Synchronized block method added to load keystore set with RUF
Resolved in Pega Version 8.1.2
A recent enhancement allows for the SAML auth service to use a reference to an external file for the signing certificate keystore. When the keystore had the password set using a Rule-Utility-Function, rather than being static, there were intermittent login fails with the error "unable to process SAML WebSSO request1" on the screen, and the RULES logs contained thousands of entries of an error indicating "Password is wrong". It was sometimes possible to log in by starting a new browser sessions and trying again. This was an issue with the PasswordHash property being changed from a static to a non-static field: it was not thread safe, though each object got its own copy of the instance, because if two or more threads call the setPasswordHash() method on the same object, all of these threads tried to simultaneously update the passwordHash instance variable and incorrect results were seen. To correct this, the system will use a synchronized block when loading the entries into cache in the getKey() method - Caller function of KeystoreCacheImpl.java.
SR-C58241 · Issue 409217
Agent Access Group corruption resolved
Resolved in Pega Version 8.1.2
The Access Group used by agents was intermittently becoming corrupted. This was caused by a timing issue where sometimes the conclusion was built before the rulesets to the requestor were set up, resulting in the role being added to the RoleNotFound cache. To resolve this, the RoleNotFound cache has been removed so that every time a role lookup happens the system will check the database.
SR-C56652 · Issue 402945
Struts upgraded
Resolved in Pega Version 8.1.2
Apache Struts has been upgraded to version 2.5.17.
SR-C72225 · Issue 409998
Improvements to Services Tracer
Resolved in Pega Version 8.1.2
When clicking on tracer to get details of a page, a pop-up window opened up with a highlighted link (in blue color) to open the parameter page or the primary page, but clicking on either of these page names opened a blank window without any properties mapping. This was due to the underlying object missing required data because the Services related tracer events did not always have PRThread objects associated with them. The Tracer infrastructure expected the proper PRThread to be in the "ThreadContainer" but offered no option for providing the thread, and the ThreadContainer was not always populated when Services ran. To resolve this, the Tracer Event infrastructure has been refactored to allow specifying a PRThread in RULE-HTML-FRAGMENT TRACERTRACEEVENTSSCRIPTS. The constructor logic in TraceEventBaseImpl has also been modified so child classes can pass a thread instead of relying on ThreadContainer. The Node ID for tracer events will be set based on PREngineProvider instead of ThreadContainer, and the ServiceEvent Interface's methods have been updated to take pointers to PRThreads so that the tracer knows who/what is being traced. In addition, NPE protection has been added to RemoteTracerStub so Tracing Services will not crash the Tracer UI when running from eclipse / prwebpacked.
SR-C73131 · Issue 411758
SAML login rule form documentation updated to reflect usage with IDP
Resolved in Pega Version 8.1.2
SAML authentication was not working properly during login. This was traced to the assertion not being signed when SAML responses received from IDP require this, and was due to the check box under SP settings not being applied for POST binding. As a result, a local IDP configuration sent a signed response but not a signed assertion. To clarify this, the label message in the SAML rule form has been modified to read "Reject unsigned response and assertion" and the help documentation has been updated to reflect this usage.