INC-200609 · Issue 699302
Corrected single case metrics being combined
Resolved in Pega Version 8.5.6
In Single Case dataflow runs, even though the data is processed on nodes, after some point of time the metrics were moving to 'Combined metrics of unavailable node'. This occurred when the corresponding service (realtime) was not available on the node when running the single case run, and has been resolved by updating the system to prevent single case metrics being combined while running on a node without realtime service enabled.
INC-202937 · Issue 695940
RealTimeProcessingDelay made configurable
Resolved in Pega Version 8.5.6
When using interaction history summaries in Engagement Policy strategies, the check whether a particular action was sent previously was not returning any results for the customers that did have an action "Sent". These records were present in the IH Fact table but the IH Summary tables were missing these records. This has been resolved by making the realTimeProcessingDelay configurable for reading from IH in a real-time flow configurable (done as part of IH pre-aggregation). This may be useful if there can be a difference in time between machines inserting into IH which causes pre-aggregation to miss processing records. The relevant DSS is "interactionHistory/realTimeProcessingDelay", and the default is 5 seconds. This must be set before starting pre-aggregation. This is the difference between the end position and the log time. RuleSet: Pega-DecisionEngine DSS Name: interactionHistory/realTimeProcessingDelay Value: <new delay in seconds>
INC-203994 · Issue 698852
DSS added to handle merges with lower versions of Postgres
Resolved in Pega Version 8.5.6
After update, executing the batch campaign with volume constraint resulted in the second data flow DF_Wait failing with error message "ERROR: number of columns (1844) exceeds limit (1664)". This was due to the database set’s change (in 8.5) to use the database layer’s merge statement. Prior to that, the logic used "deletes and inserts". Depending on the version of Postsgres, the generated SQL statement for a merge statement is different. The “INSERT … ON CONFLICT … UPDATE” syntax is generated for Postgres 9.5+ AND when there is a PK constraint defined for the database table. Otherwise, the complex UPSERT statement (old syntax) is generated, as was the case in this issue. This is a known issue in the Postgres server software where it mis-interprets the number of columns involved. i.e., it mistakenly counts the number of columns twice. As a result, the actual maximum columns allowed is only half of the official limit (1664). The same UPSERT statement does not cause the “exceeds limit” exception if there are 832 or fewer columns in the statement. To resolve this, an option has been provided to select between the “original logic” (deletes and inserts) and the “merge statements” logic by way of the DSS “decision/datasets/db/useMergeStatementForUpdates”. Setting “true” will use the merge statement logic, and setting “false” will use deletes and inserts. When the DSS is not defined, the default is "true" and the system will use merge statements in the form preferred by Postgres 9.5+.
INC-204682 · Issue 695703
HandleResponses updated for use with optimized campaign
Resolved in Pega Version 8.5.6
After updating from Pega 8.4, responses were not processed in the pxHandleResponses Data flow if the "pyCampaignOptimization" flag was set to true. This was traced to a missed use case for an optimized campaign, and has been resolved by modifying the condition in HandleResponses.
INC-206109 · Issue 706239
Delayed Learning works correctly with Volume Constraints
Resolved in Pega Version 8.5.6
When running an outbound campaign using NBA Designers predictions and delayed learning in conjunction with volume constraints, the adaptive models ended up with incorrect feedback if the prediction had an Alternative label configured with a defined waiting window. This has been resolved with the addition of a new flag 'isVolumeConstraintEnabled' during dataflow creation which will check for volume constraint, and a filter in HandleResponses for that flag.
INC-206684 · Issue 699364
Empty string handling added to SSA CompareDates
Resolved in Pega Version 8.5.6
The CompareDates implementation in SSA has been updated to fallback to the current datetime/date if it encounters empty string arguments.
INC-206799 · Issue 701439
Performance improvements for stale thread warnings
Resolved in Pega Version 8.5.6
Stale thread warnings were causing performance issues during dataflow run execution. Stale thread/slow component warnings are added as part of the dataflow execution when a processing thread takes more than 5 minutes to process a single dataflow record. The stacktrace of the dataflow thread is added as part of the warning for debugging purposes, but in some scenarios the stacktrace can become very large. This has been resolved by removing the stacktraces from the warning, improving the query logic, and adding the run ID to the exception method to assist if there is an error.
INC-207357 · Issue 703350
Decision Management book updated for additional NLP troubleshooting
Resolved in Pega Version 8.5.6
Troubleshooting articles have been added to the Decision Management book which address the most common issues encountered when working with the NLP capability of Pega Platform, including topic and entity detection and email parser. These tips can assist with issues such as a node running out of memory due to having a large number of custom Ruta scripts that use REGEX pattern matching.
INC-212656 · Issue 706896
Decision funnel simulation improvements
Resolved in Pega Version 8.5.6
Memory fixes and performance improvements have been added for funnel simulations.
INC-213189 · Issue 707346
Addressed performance issues for classless DSMClipboardPage
Resolved in Pega Version 8.5.6
The DSMClipboardPage implementation handles Page Group access as a classless page (i.e. pxObjClass = ""), creating potential performance issues in implementations where the page group is used with a very large number of distinct AccountIDs in a short period. This has been resolved by updating the system to not cache keys for page group classless page.