INC-197730 · Issue 686234
Prediction outcome response timing updated
Resolved in Pega Version 8.7
Predictions using a response timeout were not emitting a negative response ('NoResponse') when the specified waiting time expired. This was traced to the the outcome and response timeout values being overridden while triggering responses for multi stage predictions along with chained predictions. This has been resolved by modifying the flow to emit each outcome as it is received and by adding the dataflow trigger in the function so that it does not override the values in case of chained predictions.
INC-198232 · Issue 685700
Tombstone cleanup modified to handle very large volume environments
Resolved in Pega Version 8.7
Cassandra nodes were periodically suffering from an out of memory condition. This was traced to tumbling windows creating too many tombstones for Cassandra to clean up effectively when running in a very high volume environment with a short tumbling time. This has been resolved by modifying the procedure away from using individual tombstones to instead use range tombstones which will continuously supersede the previous tombstone so there is never an opportunity for them to build up.
INC-200152 · Issue 689865
Performance improvements for action check-in
Resolved in Pega Version 8.7
The process of 'Saving As' an action to a higher ruleset, Saving, and then running Check-in was taking an excessive amount of time. This was traced to redundant page copy activities and performance has been improved by updating the implementation.
INC-201364 · Issue 690806
Prediction outcome response timing updated
Resolved in Pega Version 8.7
Predictions using a response timeout were not emitting a negative response ('NoResponse') when the specified waiting time expired. This was traced to the the outcome and response timeout values being overridden while triggering responses for multi stage predictions along with chained predictions. This has been resolved by modifying the flow to emit each outcome as it is received and by adding the dataflow trigger in the function so that it does not override the values in case of chained predictions.
INC-201366 · Issue 691508
Performance improvements for stale thread warnings
Resolved in Pega Version 8.7
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-145293 · Issue 674901
Additional diagnostic logging added for ElasticSearch startup issues
Resolved in Pega Version 8.7
The PyIndexerState was stuck in Starting status during node initialization. This issue could occur if the filesystem became hung due to network level issue while scanning entries from /etc/mtab, resulting in a lock which was not released correctly. In order to better determine which node entry in a cluster may be responsible for the hang, an update has been made which will use a temporary virtual environment to repeat the part of the initialization phase responsible and generate additional logs for debugging. To activate this, the PegaSearch.Diagnostics logger must be set in DEBUG mode. This duplicated virtual initialization will not interrupt the normal initialization.
INC-153849 · Issue 641925
Updated replica management for search clusters
Resolved in Pega Version 8.7
When using a cluster with two Universal nodes in the cluster, a daily restart process where the second node was not started until the first was fully up resulted in Search initialization failing for the first node while becoming active on the second node. This was traced to the methods used in increasing and decreasing replicas. This has been resolved by revising the handling of ElasticSearch node lifecycle and replicas through a new option "Dindex.searchNodeCount " which includes a specification for the number of expected search nodes. If this option is not present, the old method will be used.
INC-160190 · Issue 658125
Logic updated to allow page property and declare index with the same name
Resolved in Pega Version 8.7
A Property which was in a Pagelist which in turn was embedded in a Page was not visible in the Report Browser. This was traced to the two properties sharing the same name, and was caused by a check which ensured only entries with unique names were added. In order to support this configuration, logic has been added to pzAddPropListForClass_TreeGrid such that if a page property and declare index share the same name, they are both added to the tree grid.
INC-162649 · Issue 639400
DSS added for handling missing attachments
Resolved in Pega Version 8.7
When an S3 repository was configured as storage, some cases were not coming up in search and exception errors were seen in logs for a deleted attachment after every system restart/re-indexing of the search. Investigation showed these case objects were in the broken queue for pyFTSIncrementalIndexer due to a null pointer error encountered when indexing the attachment, and that the attachments were available in the repository but could not be read from the attachment repository during indexing. To resolve this, a new DSS setting has been added which allows selecting one of two behaviors: * Pega-SearchEngine indexing/distributed/fail_on_missing_attachment_file = true : broken item is generated, but with a meaningful error message. This is the default behavior * Pega-SearchEngine indexing/distributed/fail_on_missing_attachment_file = false: case is indexed, but without the problematic attachment. Error message is printed out to the logs.
INC-166120 · Issue 657055
Parameter added to prevent name localization in Dev Studio Reports
Resolved in Pega Version 8.7
Running the DataTableEditorReport against a customer table translated names that matched localized values, such as "Mr. Block" became "Mr. Sperren" when the locale was set to de_DE even though the property was marked as "Do not localize" in UI Controls in the report definition filter. To resolve this, the parameter 'pyskiplocalization' has been added for use in the RRFilters_logic and while displaying the select Values popup.