SR-B69409 · Issue 317548
CLOB type handling enhanced in Marketing
Resolved in Pega Version 7.3.1
Pega Marketing uses the out-of-the-box DSM activity pxRunDDFWithProgressPage for triggering Data flow runtime. After upgrade in DB2 environments, the DF execution completed but the activity returned a failure. It was found that if a CLOB column is present in the filter of a NativeSQL object invoked from an activity, the status had an error message even though functionality was fine. To ensure consistent behavior, CLOB has been added to supported data types so the severity of the exception can be changed so as to not show error message in activity's status.
SR-B50950 · Issue 308958
Connect-SOAP passivation tuned
Resolved in Pega Version 7.3.1
Connect-SOAP implementation uses requestor instance to cache STSConfigContext and Axis2 ServiceClient objects; these are not serialize-able and were leading to requestor passivation failure. As part of the fix, these objects will be de-referenced from the requestor page and instead the system will use a requestor scoped data page to cache STSConfigContext and Axis2 ServiceClient objects.
SR-B55660 · Issue 316375
Removed "SHA1" hard coding from SAMLRedirectBindingHandler
Resolved in Pega Version 7.3.1
SAML logout failure was seen after using SHA256 signature encoding on an IDP that does not support SOAP. Previously,"SHA1" was hard coded to be used for verification of certificate during logout in the case of HTTP-Redirect Binding; this hard coding has now been removed from SAMLRedirectBindingHandler.verify() .
SR-B72326 · Issue 325267
EmailListener handling updated for addressee errors
Resolved in Pega Version 7.3.1
When messages are handled by the EmailListener with more than one recipient (more than one TO: header and even sometimes more than one CC: header), the EmailListener activity will create a (sub-)case for each of these recipients, based on their email addresses from the TO: or CC: list. If an error was generated by one of the recipient email addresses in one of the groups (TO: or CC:) being invalid, only the invalid address was returned to the EmailListener for further processing. This meant the other addresses in the same group were ignored and no (sub-)case created for them. To address this issue, the handling has been changed: If an exception occurs while processing a recipient's name, the system will iterate through the Message to get recipients one by one. If the Address is valid it will be added to the list, and if it's invalid then extractEmailAddress API will be used to attempt to extract a valid email address and add it. If the extraction did not obtain a valid email address it will be logged and ignored. Please note that all this processing will be done if FailOnAddressException DSS is set to false (the existing behavior).
SR-B73213 · Issue 322353
CMIS-GetPropertiesResponse property mapping fixed
Resolved in Pega Version 7.3.1
The CMIS properties' data was improperly mapped to a "pyProperty" Page List property which was not part of the CMIS-GetPropertiesResponse data model, rather than mapping the data into the proper "pyProperty" Page List properties in the CMIS-GetRepositoriesResponse data model such as pyPropertyBoolean, pyPropertyInteger. This was caused by a defect in the Pega engine's CMISConnector module caused by changes made to simplify and consolidate the "map Properties" logic. The CMISConnector module has been repaired so that it correctly derives data type when giving a pointer to a PropertyDataObject:
SR-B57228 · Issue 325976
Timer exit error fixed for STS SOAP
Resolved in Pega Version 7.3.1
If STS was enabled for a SOAP Connector and if a valid STS token was already available, hundreds of error messages about attempting to stop the timer were logged. This was traced to a step order error which started the timer and then exited before stopping it, and the missing step has been added.
SR-B65469 · Issue 330983
Connect-SQL documentation updated to clarify no milliseconds in Oracle TIMESTAMP
Resolved in Pega Version 7.3.1
The documentation for Connect-SQL rules has been updated to clarify that the datetime hint in rdb-save will not store millisecond precision in the TIMESTAMP column type of an Oracle database.
INC-119646 · Issue 563696
RemovePrivateBlockedAndWithdrawnRAQs updated to avoid exception
Resolved in Pega Version 8.4.2
If the method removePrivateBlockedAndWithdrawnRAQs() (present on the AgentRuleUtils.java class) had both the "ignore personal rulesets containing checked out files" and "ignore "Blocked or Withdrawn agent" conditions set, raqsItr.remove(); ran twice and resulted in a java.lang.IllegalStateException. This could lead to undesired outcomes such as agents not showing up properly. To correct this, the code has been refactored to avoid running raqsItr.remove(); more than the necessary number of times.
INC-125193 · Issue 561461
Processed in last hour generated correctly
Resolved in Pega Version 8.4.2
After upgrade, the 'Processed in last hour' for pyFTSIncrementalIndexer (or any other queue processor) did not show the totals processed. This was traced to an error in a declare expression rule, and has been corrected.
INC-128654 · Issue 567410
Queue processor handling updated
Resolved in Pega Version 8.4.2
After upgrade, the queue processors were not processing all the items in the queue, however the value under the 'number of items processed in the last hour' in the Admin studio showed the value was equal to the total number of items in the queue. This was traced to the an incorrect offset kept by the queue processor in the data table (Data-QueueProcessor-Run-Partition). Because the incoming messages from Kafka have a lower offset than the one kept by the queue processor, messages were treated as duplicates and not processed. This has been resolved by adding a partitions-validation mechanism on QP startup. To assist in proper handling, any messages identified as potentially already processed will be moved to the broken messages queue.