INC-169856 · Issue 649458
Personalized table sort order limited
Resolved in Pega Version 8.4.5
After implementing a personalized table, the query started adding more 'order by' sorts, causing system impact. This was traced to the pzPopulateSortOrder activity Implementation having different constants assumed for the same purpose (999 in one place and 99999 in another), and has been resolved by updating the logic in step 1 and step 2 to disregard sort orders higher than 999.
INC-174756 · Issue 650672
Queue processor correctly moves items to Broken Items
Resolved in Pega Version 8.4.5
When an exception occurred while Queue Processor processed an item, he queue item was not moved to Broken Items. The error " inconsistent datatypes: expected - got CLOB DatabaseException caused by prior exception" was generated. This has been resolved by modifying the NativeSQL builder and NativeSQLBatchExecutor to allow the batch of queries to be retried. Additional changes were also added for Oracle databases to identify the correct column types.
INC-175622 · Issue 652278
Screen reader announces report names
Resolved in Pega Version 8.4.5
An update has been made to pyReportBrowserItem to ensure names of the reports on the report browser are read correctly.
INC-150317 · Issue 625881
Certificate updates handled across nodes
Resolved in Pega Version 8.4.5
An SSL handshake exception was occurring when running a Connect-REST call automatically from the flow as a background process on a background processing node. The same Connect-REST worked fine when run manually. The exception detailed the issue as "SSLHandshakeException: java.security.cert.CertificateException: None of the TrustManagers allowed for trust of the SSL certificate(s) provided by the remote server to which this client attempted a connection." This was traced to a pulse change scenario where the reloading of the certificates was not happening on all the nodes after adding a new certificate or deleting a certificate. This has ben resolved by adding the DATA-ADMIN-SECURITY-CERTIFICATE class into the UpdatesCacheUtils.java class.
INC-155276 · Issue 622815
Null check added for step page
Resolved in Pega Version 8.4.5
After creating and adding new Access Roles and application 'Access When' to the privileges instead of Production level, during run time the error "runtime.IndeterminateConditionalException: Trying to evaluate Rule-Access-When conditions L:IsProdAccess when there is no page to evaluate them against" appeared for the specific privileges. This was traced to a missed use case where the system falls back to the step page if the page for evaluating the 'when' condition is null, which did not account for scenarios where the step page can be null. To resolve this, a null check has been added which will fetch the primary page if the step page for the access 'when' condition is null.
INC-155813 · Issue 629504
SAML SSO redirects to correct URL when application and authentication aliases match
Resolved in Pega Version 8.4.5
Whenever there was a match in the authentication service alias and the application alias, the application alias was replaced with empty after logoff instead of making the authentication service alias empty. For example, given an authentication service with the alias XYZ ("login with XYZ" alias option) and an application name XYZMyOps, the application alias was being changed from XYZMyOps to appMyOps after logoff. As a result, a blue screen error resulted when clicking on button "login with XYZ" again because it redirected to appMyOps, which didn't exist. This has been resolved by removing authservicealias and modifying AuthServiceAliasHelper.adjustPathIfAuthServiceAliasPresent() to change the method for calculating the pathinfo to string tokenizing.
INC-156647 · Issue 626292
Improved disconnected requestor cleanup for FieldService
Resolved in Pega Version 8.4.5
A large number of requestors from FieldService with the status as 'Disconnected' were accumulating and causing performance issues. This was traced to the requestors not getting passivated due to users not logging out and new requestors being created for the same users next time, and was caused by the value of the DSS Initialization/PersistRequestor being set as "OnTimeout". When the DSS prconfig/timeout/browser/default is not configured, the default browser requestor timeout is 60 minutes. In this scenario, requestors were not passivating as the requestor passivation timeout was set to the refresh token lifetime for mobile users, which was very large and overwrote the DSS value. This has been resolved by removing the code which set the passivation timeout to the OAuth2 refresh token lifetime.
INC-158720 · Issue 633990
Handling added for obfuscation stale requestor error
Resolved in Pega Version 8.4.5
When an environment was configured with URL encryption (initialization/UREncryption) set to true and the Authentication Service OPENID had a POST authentication activity which set pyAuthenticationPolicyResult to false, a blue screen error was seen with the exception "Obfuscation cannot be performed with a null or blank key". This was traced to the system trying to fetch the secureFeaturesForURLTampering property from staleRequestorrequestor object when the object had already been destroyed. This has been resolved by adding additional handling for the staleRequestorError.
INC-161260 · Issue 634050
Enhanced logging for CBAC policies
Resolved in Pega Version 8.4.5
Additional logs have been added to assist in easier debugging of any configuration issues with CBAC policies.
INC-163226 · Issue 632964
Alert resolved for query parameter in non-standard format
Resolved in Pega Version 8.4.5
A failure status occurred during refresh of an optimized grid section. Investigation showed this was caused by a parameterized datapage being used as a source for a section that passed a query parameter in a non-standard format. There was no functional impact, and the alert has been resolved by setting the system to call StreamParameter extraction only if the rejectTamperedRequests DSS is explicitly set to true.