SR-D39956 · Issue 511638
Corrected method IF use with shortcut function
Resolved in Pega Version 8.4
After upgrade, method IF was not working as expected when used in an expression like "@if(.totalorders_120days>0,(.remakeorders_120days/.totalorders_120days)<0.3,false)". This was caused by a missed use case for the combination of an exception-generating function in combination with a shortcut function (i.e. ternary, and, or), and has been resolved.
SR-D41207 · Issue 512088
Fallover stategy added to chat routing to keep event processor running
Resolved in Pega Version 8.4
Chats were becoming stuck in the queue and end users were not able to connect with the customer service representative. An excessive number of queued items were observed in a Queue Processor named "EventProcessor". This was traced to the setting "Browse from the offset" having been removed because of a retention policy. This resulted in "Browse from the end of the stream" being used instead even though browse should start from the earliest known offset. To resolve this, Stream Producer will be cached based on topic, and Stream consumer will fall over to an earliest strategy in case the requested offset isn't found so the event queue will be handled in a timely manner.
SR-D41616 · Issue 509809
Corrected Cassandra startup error related to client authentication
Resolved in Pega Version 8.4
During provisioning, Cassandra nodes in PegaDDSTier failed to join the cluster and the error "Exception (org.apache.cassandra.exceptions.ConfigurationException) encountered during startup: Invalid yaml. Those properties [truststore_password, truststore] are not valid" was generated. Investigation showed that the recent addition of support for client authentication using the settings "dnode/cassandra_client_encryption/truststore" and "dnode/cassandra_client_encryption/truststore_password" resulted in nulls being set cassandra.yaml if the new parameters were not given values. To resolve this, truststore and truststore_password will not be added to cassandra.yaml when they are not set in prconfig or system settings.
SR-D42451 · Issue 518068
ExecuteRDB call updated to use NativeSQL for blob
Resolved in Pega Version 8.4
After creating a test activity to clear data set records that used the DataSet-Execute method and passed the data set name and truncate operation, only 51 records were deleted in a single run when the data set had more than 51 records. Investigation showed that for blob tables, the database truncate operation was using executeRDB with an empty results page, i.e. it didn't specify pyMaxRecords, which on some databases might have limited the number affected records. To resolve this, the executeRDB call in the database truncate operation has been modified to use NativeSQL for blob tables.
SR-D43470 · Issue 511440
Adjusted generated file cleanup to resolve class not found issues
Resolved in Pega Version 8.4
After upgrade, attempting to run a new multi-channel campaign failed with an error citing "java.lang.NoClassDefFoundError: com/pegarules/generated/testgen/Rule_Decision_DDF_Data_Decision_Request_Customer_DF_ProcessOffer_Action". This was traced to a temporary directory with generated java files that was cleaned up before the restart, leading to the .Class file for the DF_ProcessOffer not being present when needed. This has been resolved by adjusting the cleanup of the files so they are not removed too early.
SR-D43912 · Issue 509738
Fallover stategy added to chat routing to keep event processor running
Resolved in Pega Version 8.4
Chats were becoming stuck in the queue and end users were not able to connect with the customer service representative. An excessive number of queued items were observed in a Queue Processor named "EventProcessor". This was traced to the setting "Browse from the offset" having been removed because of a retention policy. This resulted in "Browse from the end of the stream" being used instead even though browse should start from the earliest known offset. To resolve this, Stream Producer will be cached based on topic, and Stream consumer will fall over to an earliest strategy in case the requested offset isn't found so the event queue will be handled in a timely manner.
SR-D44159 · Issue 512448
Refined Change Request creation logic
Resolved in Pega Version 8.4
Once a Change Request was terminated/closed with the X button available on the UI, the Change Request was created but could not be opened from the Report Manager landing page. Investigation showed that a change request created from the new revision button or create change request in the refine selection screen did not yet have pyLabel available in the CR because the assignment would not be submitted at this stage (Refine selection screen). Once the assignment was submitted, the pyLabel value would be committed to the database and be available in the change request. To resolve this, the CR creation rules have been modified and will set the pylabel value.
SR-D45608 · Issue 519903
Correct service instance name passed for data flow in DSMStatus
Resolved in Pega Version 8.4
When using the Connect-HTTP service "DSMStatus" to provide the node and status information as seen on the various tabs of the Designer Studio > Decisioning > Infrastructure > Services landing page, using DataFlow as the service parameter for the HTTP service method resulted in an empty response when the expectation was to get the information regarding the cluster details of Dataflow node type. This was traced to the service instance name not being parsed correctly when used for Data Flow services, and has been resolved by ensuring the correct service instance name is passed for this use.
SR-D45698 · Issue 511090
Edit available rules now available for rules created in revision management control
Resolved in Pega Version 8.4
New rules created in a revision management context could not be removed from the overlay using the edit available rules functionality. This was caused by the delete button against all new rules being disabled due to the 'when' rule pyDisableDeleteInIncludedRules always being true for new rules created in revision management context. When new rules are created in the revision management context, the pyNewRuleInLP property will always exist and its value will be false. If a revision involving the new rule has not yet been submitted, the new rule is not displayed in the list of available rules at all. When the rule is displayed after the revision is submitted, the pyNewRuleInLP property value will always be false. In order to support the editing of rules in this scenario, the 'when' rule Data-Rule-Summary.pyDisableDeleteInIncludedRules has been updated so that instead of the "property pyNewRuleInLP exists and has value" check, there is now a "property pyNewRuleInLP is true" check.
SR-D47618 · Issue 512603
Statistic rounding error in ADMSnapshot Agent with Oracle corrected
Resolved in Pega Version 8.4
While running the ADMSnapshot Agent, the exception "internal.mgmt.Executable) ERROR com.pega.decision.adm.client.ADMException: Failed to complete ADM Data Mart snapshot" was seen. This was traced to an issue with the rounding of performance statistics when using Oracle, and has been resolved.