SR-D22686 · Issue 493516
IH summaries working with external Cassandra
Resolved in Pega Version 8.3.1
Summaries were not working for external Cassandra. This was an issue with the IH summary component using the aggregated dataset as a reference, and this fix contains several components to improve this function. An issue where the IH aggregates dataset does not materialize when DDS is external Cassandra has been resolved by modifying the code that checks the DDS availability. A filter that was used to match “” did not work when pre-aggregation is off : this was due to the IH Browse operation being done outside of a DF context, and has been fixed. The IH Summary shape not working properly in a strategy if it referenced an aggregate dataset with pxInteractionID as part of the group-by properties was traced to an issue with it generating a pxInteractionID value when executing the strategy, and has been resolved by excluding pxInteractionID from the group keys in the IH Summary shape.
SR-D24880 · Issue 494171
CEP bucket size increased to 1 minute
Resolved in Pega Version 8.3.1
Frequent DSM Data Flow Errors were observed in production nodes with very high event rates. This was traced to the default bucket size for CEP being 1 second for a 31 day window, which was not sufficient to handle high volume use which may create an event strategy window large enough to hit the Cassandra column size limit. In order to resolve this, the default bucket size has been increased from 1 second to 1 minute.
SR-D25184 · Issue 494689
Support added for referencing Page Group property inside of strategy
Resolved in Pega Version 8.3.1
Referencing a page property under Page Group property inside a strategy resulted in a runtime error of ClassCasting: "java.lang.ClassCastException: java.util.ArrayList cannot be cast to com.pega.decision.strategy.ssa.runtime.ClipboardPage". The issue was traced to the SSA optimized code for the GetPage SSA assuming that the GetPage SSA would only have another page as a parent. In order to handle the above scenario where GetPage would have a GetPageCollection as a parent and return a List of ClipboardPages, a GetPage function has been applied over each entry in the results of the GetPageCollection SSA using a MapAction SSA. Some optimizations will be applied in cases where the GetPageCollection has only one entry, which will replace the MapAction with a simple GetPage action.
SR-D26010 · Issue 500163
Modified VBD insertion logic to improve handling
Resolved in Pega Version 8.3.1
An issue with not being able to launch an additional VDB node was traced to two processes inserting into VBD with different field signatures and triggering unnecessary object creation. This was amplified when adding a second node as the objects were serialized. To resolve this, the insertion logic has been modified to avoid creating new data container/field descriptors after a new field is included, as well as a measurement with smaller data type than previous container.
SR-D28038 · Issue 501755
External Cassandra nodes listed in DDS cluster
Resolved in Pega Version 8.3.1
Nodes of an external Cassandra cluster were not listed in the DDS cluster except for the first one in the host list, and when the “only” listed Cassandra node was restarted, the status on the DDS cluster LP did not become “NORMAL” afterwards. In addition, even though other C* nodes were up and running, the external Cassandra cluster was reported as unreachable. This was an unintended side effect of work done on the landing page to reflect the real state of the nodes after some were killed and restarted, and has been corrected by refining the equals() and hashCode() methods for DDS member info in order to better differentiate the external Cassandra nodes.
SR-D32719 · Issue 505260
Compliation error resolved for editing complex offers
Resolved in Pega Version 8.3.1
The following error was logged while trying to edit offers: "com.pega.pegarules.pub.generator.FirstUseAssemblerException: Failed to compile generated Java, com.pegarules.generated.html_section.ra_stream_pyeditelement." Research showed the code for the static initializer was exceeding the 65535 byte limit, causing the java compilation of the pyEditElement section to fail for a decision data rule. This was due to the pyEditElement section for a decision data rule being circumstanced: the assembler architecture of circumstanced section rules generated and added code for all the versions of a circumstanced section. Hence, if the section referenced a lot of properties and it existed in multiple ruleset(s)/ruleset versions, the java compilation for the section rule failed. To correct this, the integration of the pyEditElement section with decision data rules has been revised and enhanced, and a function and utility have been provided to call the function to clean up the old and redundant pyEditElement sections for a given decision data rule.
SR-D37163 · Issue 505476
Corrected Decision Data import filter behavior
Resolved in Pega Version 8.3.1
After upgrade, if a Decision data import referred another component to filter out the import, it did not work. This has been corrected.
SR-D38492 · Issue 505488
Batching now enabled when using IH Summary shape in substrategies
Resolved in Pega Version 8.3.1
Batching was not being enabled when using IH Summary shape in substrategies. This was traced to the IH_SUMMARY_CACHE field not automatically being passed to sub-strategies, and has been corrected.
SR-D22686 · Issue 496861
Added DSS to handle BIX extracts under parse delimiter rules
Resolved in Pega Version 8.3.1
When parse delimiter rules were applied, the File Listener was not parsing the CSV manifest file generated from a BIX extract until the file was resaved. This was traced to a space after a comma in the extracted files, and has been resolved with the addition of a DSS which enables the use-specified delimiter to remove the space after the comma in the manifest files.
SR-D26976 · Issue 507216
Filter added to ensure correct context for proposition strategy rules
Resolved in Pega Version 8.3.1
Given two applications (ex App1 and App2) hosted on the same domain where App2 was built on App1, trying to create a strategy rule in App1 and do a test run strategy using the propositional data component which internally uses App2 propositions generated the error: Failed to find a 'RULE-DECISION-DECISIONPARAMETERS' with the name 'GROUP_2'. There were 1 rules with this name in the rulebase, but none matched this request." Investigation showed the strategy was using the PropositionNoCacheUtils and PropositionTools java classes to load the propositions during run time. In these classes, the group classes were browsed from the db irrespective of the application context, causing the strategy run to fail as it was not able to access the decision data rules in other applications which shared the same SR class as the current application. To resolve this, a filter has been added to the PropositionNoCacheUtils and PropositionTools java classes to filter out the groups that are not in the current application context.