INC-172546 · Issue 652880
Resolved classcast exception with assembled HTML controls
Resolved in Pega Version 8.7
A classcast exception was being generated on login. Investigation showed the Static Assembler was unexpectedly using a different Assembler to assemble the Html control rule. Standard behavior is that StreamBuilderAssembler assembles controls of type StreamBuilder and ControlAssemblerForVTable assembles controls of type ControlBuilder. In this case, static assembly for HTML controls using VTable was performed using StreamBuilderAssembler, causing a classcast exception when using VTable because the instance of the generated.html class was incorrectly inheriting from StreamBuilder (the parent class of ControlBuilder) instead of ControlBuilder which is the specified interface in the generated.html Java code. This has been resolved by updating the system to skip rules of type 'Rule-HTML-Property'(control) during Static Assembly.
SR-D23723 · Issue 503088
pxGenerateExcelFile updated for handling blank dates
Resolved in Pega Version 8.2.4
When using a custom template for exporting to Excel, blank DateTime property column values defaulted to the current date. To resolve this, the pxGenerateExcelFile activity has been updated to ensure that an empty date will be exported as blank and that given dates will appear in the correct datetime format.
SR-D74376 · Issue 552261
Check added for string vs boolean for pzscan JSON
Resolved in Pega Version 8.4.2
When calling the CloudRemoteMaintenance/Work-/pzscan API, the response JSON had boolean values in the form of String which caused the JSON parsing to fail. The system was using ClipboardProperty.toStringValue() while generating outbound JSON from the clipboard page, which did not correctly interpret a boolean value. To resolve this, a check has been added that will assess the value and invoke ClipboardPage.toBoolean() when needed so that the value is converted as per type before generating the JSON.
SR-D95511 · Issue 557292
Decision table testConsistency updated to include duplicate columns
Resolved in Pega Version 8.4.2
Show Conflicts incorrectly reported unreachable conditions for a decision table and there was a red severe warning ribbon on the top of the rule after saving when in actuality the conditions were unique and the execution was correct, with the runtime execution of each row in the table giving the correct results. This was traced to the use of a property as the column header for multiple columns: testConsistency marked the columns other than the first as duplicates and excluded them from the consistency check. As a result, when a decision table had 3+ rows with a value in the first row and empty values for the rest of the rows and used an operator such as >, all rows starting with the 3rd row became unreachable because the first row covered values > 1 and the second covered the rest, therefore the third was unreachable. To resolve this, the system has been updated to involve all duplicate columns in the consistency check.
SR-D95353 · Issue 557043
Null check and enhanced logging added to Update Existing Application
Resolved in Pega Version 8.4.2
While performing "Update Existing Application" step as part of post upgrade activities, errors were seen about hidden or circumstanced rules relating to "prprivate-exec.jar:?". Investigation indicated that rulesets were being iterated and compared, but it was not clear which ruleset might be causing the issue. The root cause was code that used an integer type in the comparison, leading to a null pointer error when it was null. To resolve this, a check has been added that will assign a value of 0 if the value is null in the comparison, and infoForced logging will be used to tell what caused the null.
INC-175595 · Issue 652831
Java Bean import updated to handling differences in Java 7 and Java 8
Resolved in Pega Version 8.7
The behavior of the java bean Introspector class is inconsistent across different versions of the JDK when detecting indexed properties built off of java.util.List objects, causing Java Bean import to generate differently in Java 7 and Java 8. This has been resolved by updating PRIndexedPropertyDescriptor to better handle this JDK difference by resolving indexed read and write methods manually using simple reflection.
INC-120356 · Issue 560225
Class Loader cache values wrapped with WeakReference for improved cleanup
Resolved in Pega Version 8.4.2
Out Of Memory exceptions due to Metaspace were observed on Web tier instances running with a max Metaspace size of 2GB. Investigation showed that in PRClassLoaderDB, mLoaderCache values were wrapped with a SoftReference. To resolve this, the Class Loader cache values will be wrapped with a WeakReference, allowing the cache to free memory when it is no longer needed. JVM options has also been added to switch types of References being used if there is a preference.
INC-131416 · Issue 575453
Class Loader cache values wrapped with WeakReference for improved cleanup
Resolved in Pega Version 8.4.2
Out Of Memory exceptions due to Metaspace were observed on Web tier instances running with a max Metaspace size of 2GB. Investigation showed that in PRClassLoaderDB, mLoaderCache values were wrapped with a SoftReference. To resolve this, the Class Loader cache values will be wrapped with a WeakReference, allowing the cache to free memory when it is no longer needed. JVM options has also been added to switch types of References being used if there is a preference.
SR-D83424 · Issue 552724
Class Loader cache values wrapped with WeakReference for improved cleanup
Resolved in Pega Version 8.4.2
Out Of Memory exceptions due to Metaspace were observed on Web tier instances running with a max Metaspace size of 2GB. Investigation showed that in PRClassLoaderDB, mLoaderCache values were wrapped with a SoftReference. To resolve this, the Class Loader cache values will be wrapped with a WeakReference, allowing the cache to free memory when it is no longer needed. JVM options has also been added to switch types of References being used if there is a preference.
SR-D91894 · Issue 557222
Class Loader cache values wrapped with WeakReference for improved cleanup
Resolved in Pega Version 8.4.2
Out Of Memory exceptions due to Metaspace were observed on Web tier instances running with a max Metaspace size of 2GB. Investigation showed that in PRClassLoaderDB, mLoaderCache values were wrapped with a SoftReference. To resolve this, the Class Loader cache values will be wrapped with a WeakReference, allowing the cache to free memory when it is no longer needed. JVM options has also been added to switch types of References being used if there is a preference.