INC-213308 · Issue 712074
Fallback added for missing fileName in MultipartHTTPResponse
Resolved in Pega Version 8.7.2
Given a multipart/form-data response with multiple attachments, when there was no explicit fileName header provided for a body part, the engine skipped processing the part and no data was present on pyRequestAttachmentPage. This has been resolved by adding a fallback in HTTPClientUtils#handleMultipartHTTPResponse() so that if no fileName is present, the 'name' parameter of the Content-Disposition header field will be used.
INC-220137 · Issue 715266
UpdateDateTime casing corrected in filters
Resolved in Pega Version 8.7.2
When using Job Scheduler with MS/SQL, the error "Cannot find either column 'mktdata' or the user-defined function or aggregate 'mktdata.pr_read_from_stream', or the name is ambiguous." This was traced to a casing issue and has been resolved by updating the pxupdatedatetime property to pxUpdateDateTime in Filters F1 and F2.
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-120557 · Issue 558188
Class Loader cache values wrapped with WeakReference for improved cleanup
Resolved in Pega Version 8.2.7
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 552721
Class Loader cache values wrapped with WeakReference for improved cleanup
Resolved in Pega Version 8.2.7
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 557220
Class Loader cache values wrapped with WeakReference for improved cleanup
Resolved in Pega Version 8.2.7
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-125480 · Issue 562487
Resolved Agile Workbench video recording timeout
Resolved in Pega Version 8.2.7
Using the Record Video option thru Agile Workbench to create an Agile Studio item was either taking an excessively long time to finish or was hanging. Research showed that this scenario could arise when the input parameter value crossed more than 50 characters and triggered the interaction threshold for an alert, and has been resolved by updating the system so that query parameters with size more than 50 are not encoded and added to alert logs.
INC-211178 · Issue 704592
Decimal parameters retain null value instead of being set to 0
Resolved in Pega Version 8.7.2
When mapping any data in 8.6+, if the source is a decimal property rule and the target is a parameter defined as decimal, the decimal parameter's value will be 0 if the source property is null. This was a behavior change from previous versions of Pega where the target parameter would be null. This has been resolved by changing the code generation for the read operation on the parameter decimal type assignment to use resolveToString() instead of calling resolveToBigDecimal() so a null value is retained.
INC-174716 · Issue 656441
Updated handling for validating/saving circumstanced rule on branch
Resolved in Pega Version 8.7
Using 'save as' for an already circumstanced rule with a new property/template caused the Rule-.DictionaryValidation activity to register the error "StandardValidate-CircumPropAlreadyDefined". The same activity Step did not throw an error when saving into Branch. This was traced to the ruleset name not being the same for the branch ruleset due to having _BRANCH_Branch-Name appended to its name, and has been resolved by adding a condition to check for circumstanced rule in a branch.
INC-183728 · Issue 665133
Oracle handling updated for primary key in upgrade DDL
Resolved in Pega Version 8.7
Previously, when a primary key of a table was created Oracle would automatically create a unique index with the same name as the primary key. However, with the introduction of Oracle 19, an optimization was added which will not do that if there is another unique index on the table which contains the column(s) of the primary key. This difference can cause updates to fail with the error "cannot drop index used for enforcement of unique/primary key". This has been resolved by updating the handling for primary key constraint and the corresponding index name.