INC-189811 · Issue 679935
Updated XMLDataToPage privilege
Resolved in Pega Version 8.7
Cases were not being created or moved due to a privilege issue on EndUser portal after update. This was traced to the XmlDataToPage activity now including the OpenDeveloperForm privilege, which end user operator profiles do not have. This was a missed use case, and has been resolved by updating XMLDataToPage so it requires authentication but not privilege to run.
INC-190270 · Issue 681087
MSGraph email listener enhancements
Resolved in Pega Version 8.7
Attachments with .eml /.msg extensions were treated as FileAttachments by the MS Graph API and generating a classcastexception. To resolve this, a check has been added to identify the attachment along with content type so .eml will be correctly recognized. In addition, the MSGraph email listener functionality related to converting from Graph to MIME message has been enhanced around the 'TO' and 'CC' recipients in a MIME message and for parsing nested attachments in Item attachment for addition to MsgraphMessage.
INC-190380 · Issue 678643
CreateVersion rule updated for REST Integration Wizard
Resolved in Pega Version 8.7
When using a JSON response in the Create REST Integration wizard to generate the rules, the wizard displayed a null pointer exception during the final generation. The error pop up message "Generation process has been canceled and all created records have been removed" was displayed on the screen. This was traced to the REST Integration Wizard putting data rules in the wrong ruleset version when the context of both the Integration Layer and the Data Layer were configured to use an existing ruleset and to create a new version of that ruleset, and has been resolved by modifying the pzCreateVersion rule to support this.
INC-191033 · Issue 684370
Security updated for viewing data tables
Resolved in Pega Version 8.7
In order to improve security related to viewing data table instances, the privilege pxListClassRecords has been created in @baseclass and added to the "may start" activity ListEditor. Please add the privilege pxListClassRecords to access groups using ListEditor.
INC-191673 · Issue 679945
"Keep file open" updated
Resolved in Pega Version 8.7
When "keep file open" was checked, Connect-File was failing with a java.io.IOException: Stream Closed error if called more than once. When "keep file open" is checked, the very first Connect-File call saves the handle to the OutputFileStreamWrapper of the requestor page. Any subsequent Connect-File calls will access this saved OutputFileStream but the stream is already closed, resulting in the exception. To resolve this, the try-with-resources statement that closed the OutputStream has been removed.
INC-192419 · Issue 677293
Atmosphere update
Resolved in Pega Version 8.7
The Atmosphere jar has been updated to version 2.4.5.9. In addition, a catch has been added for an illegal state exception in org.atmosphere.cpr.DefaultBroadcaster#executeAsyncWrite atmosphere level. This exception had no functional impact but could generate multiple log entries if there was a stale reference trying to access a request-scoped object which was post its lifetime.
INC-192820 · Issue 680453
Classmap will not be rebuilt if there are no class changes
Resolved in Pega Version 8.7
The get MBA service was not working as expected after update. This was traced to a Strategy FUA contention issue with ClassmapImpl: each time the System Pulse processed a CACHE type, it resulted in the ClassMap being rebuilt even if a Class was not added or deleted. To resolve the issue, a condition check has been added on the two places in ProcesChangesFromPulse.processChanges() that call DatabaseImp.noteConfigChangesInClassMap(). If the size of the list is 0, there is no need to rebuild.
INC-192979 · Issue 678361
Performance improvement for Application Save: Node Level Data Pages
Resolved in Pega Version 8.7
As part of new functionality introduced in 8.3, data types defined in the application record will be turned into data objects on Application save. As part of this process node level pages are invalidated and reloaded and there is an explicit commit that marks the Application record as dirty and sends any calls for the application record to the database for fresh records. In a multi-node environment, the number of queries to get the application record being saved became exponentially higher and performance impacts were seen. This has been resolved by updating the system to skip eager loading of the data page definition when an access rule or application definition is saved.
INC-193442 · Issue 679178
ServicePackage thread handling improvements
Resolved in Pega Version 8.7
Work recently done to improve the release of requestor pool threads for the ServicePackage has been further enhanced by adding an explicit status notification to the thread waiting for Data Pages to be loaded in background and added support for the use case of a missing object handler. This also resolves a 504 Gateway Time-out error intermittently seen while trying to open the URL of the Pega application.
INC-193507 · Issue 681748
DSS added to control DADT purge
Resolved in Pega Version 8.7
Thread dumps and service restarts were seen when Decision Engine data nodes were working with a very large number of tables. This has been resolved by adding a DSS as part of the CDH layer which will skip CDH DADT that contains pattern DATA_BATCHOUT, for instance "DATA-ADMIN-DB-TABLE DATA-BATCHOUTPR469001" to prevent the deletion causing full cache invalidation of the table information map. With this DSS set to true, when the purge agent runs and deletes the DADT, class cache should no longer be invalidated. With the DSS missing or set to a value other than true, the class cache invalidation will still occur.