SR-B76526 · Issue 326533
Backwards compatibility enhancement for @when() validation
Resolved in Pega Version 7.3.1
After upgrade, a Strategy rule which referred a 'when' with the syntax @when(isOnlineApplication) was failing with design time validation saying that when rule was not found in the SR and instead it had to find it in the Customer/Applies to class. For the @when() issue, the root cause was that the validation context of @when() was switched from Applies-To class to the Step Page class due to a change in the core engine. The behavior of expression parsing for when rule calls was changed in release 7.2. It used to take the Apply-to class to validate the existence of the rule, but not it is taking the Step Page class. And Strategy rule doesn't push/pop stackframe due to performance reasons, thus StepPage on stack for Strategy is always the same as Primary page. For greater compatibility, the system will set the PageContextClass to the Apply To class so the expression parser can validate the setup which is expected at run-time.
INC-195387 · Issue 681673
HandleResponses updated for use with optimized campaign
Resolved in Pega Version 8.7
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.
SR-A96852 · Issue 264159
Resolved OOM error when adding VDB DNode
Resolved in Pega Version 7.2.2
A memory leak was found relating to JBDC PreparedStatement objects (char arrays allocated to hold database query results) used when VBD loads its data partitions. This has been fixed with the addition of code to close the PreparedStatement objects created when loading Actuals partition data.
SR-B70652 · Issue 325760
Read operations updated for Datastax 3.1.x use
Resolved in Pega Version 7.3.1
In the 3.1.x Datastax driver reads are no longer retried by default. Therefore, the read operations have now been explicitly marked as idempotent to force the Datastax driver to retry timed out reads.
SR-A88481 · Issue 256518
VBS starts with DDS configured to use external Cassandra
Resolved in Pega Version 7.2.2
If DDS is configured with Internal Cassandra which is then switched to External, DDS reports to be in state NORMAL and VBD can start. However, when starting from scratch with DDS configured to use External Cassandra, DDS was failing validation and reporting to be in state CLIENT, so VBD was unable to start due to VBD's check that ensures at least one DDS is in the NORMAL state before starting. To address this, the validation code that checks the DDS state when VBD is starting has been removed and the system will instead rely on the DSM service layer to ensure that DDS is functional before VBD can start.
SR-A90821 · Issue 258447
Delayed Learning data flows use dynamic objects
Resolved in Pega Version 7.2.2
Data flows with delayed learning enabled were failing to run when initiated by a campaign. The root cause for this bug was the process where a data flow object was created only once and the same object was shared between multiple data flow runs in the node. The changes for this fix include making the DataFlow object non-static in the DelayedLearning.java class.
INC-197530 · Issue 686027
Value Finder updated for use with external Cassandra nodes
Resolved in Pega Version 8.7
Attempting to use the Value Finder feature resulted in the error "Running Simulation is not possible because the required services are not available. Contact your System Administrator to enable the data flow and decisioning data store services." Analysis traced this to a check which identifies whether there is more than one internal node available for CDH/ DSS node. Since there were only external nodes available in this scenario and no internal nodes, the method returned false and returned the error when the CDH / VF page was launched. To resolve this, the check has been modified to allow for external Cassandra.
SR-B51204 · Issue 309685
Cassandra enhancement to retrieve multiple records and use runinparallel
Resolved in Pega Version 7.3.1
An enhancement has been added to allow the Cassandra Connector GET operation to return multiple rows by querying on clustering keys and/or secondary index. In addition, an issue with Connect-Cassandra not supporting run-in-parallel execution mode has been resolved to allow a result list from list operation to be called from pyoutputpage or primary page.
SR-B64066 · Issue 313310
Cassandra enhancement to retrieve multiple records and use runinparallel
Resolved in Pega Version 7.3.1
An enhancement has been added to allow the Cassandra Connector GET operation to return multiple rows by querying on clustering keys and/or secondary index. In addition, an issue with Connect-Cassandra not supporting run-in-parallel execution mode has been resolved to allow a result list from list operation to be called from pyoutputpage or primary page.
INC-174933 · Issue 651829
Special characters escaped for use in "is in List" lookups
Resolved in Pega Version 8.7
After creating a specific criterion on any proposition using a string property, the "Is In List" operator, and a customer list with one value containing a "$", clicking save or check in resulted in the exception error "Problem invoking function: pega_decisionengine_propositionfilterfua.pzPropositionFilterMethodBody--(PublicAPI,ClipboardPage) java.lang.IllegalArgumentException: Illegal group reference at java.util.regex.Matcher.appendReplacement(Matcher.java:857) ". This has been resolved by escaping regular expression control characters in string replacement, which will allow the use of characters such as the $ sign for "is in List" lookups.