INC-190070 · Issue 676644
Restored local blocking queue cache
Resolved in Pega Version 8.6.3
After update, it was not possible to bring up secondary VBD nodes after restarting. Investigation traced this to earlier work done to resolve a memory leak issue, in which stale entries for local blocking queues were removed from cache. This resulted in modifying the queue listener logic to use "cache.getQueueIfPresent(jobId)" instead of "cache.getQueue(jobId)". Because the listener was not creating the cache if it was not present and the cache which held the local blocking queue didn't have the entry for the current remote execution job ID, the caller of the remote execution on Node2 ended up in blocking state forever, waiting on the local blocking queue. To resolve this, the code has been updated to ensure the blocking queue is created and stored in the local queue cache before publishing the remote job message.
INC-190070 · Issue 676900
Restored local blocking queue cache
Resolved in Pega Version 8.6.3
After update, it was not possible to bring up secondary VBD nodes after restarting. Investigation traced this to earlier work done to resolve a memory leak issue, in which stale entries for local blocking queues were removed from cache. This resulted in modifying the queue listener logic to use "cache.getQueueIfPresent(jobId)" instead of "cache.getQueue(jobId)". Because the listener was not creating the cache if it was not present and the cache which held the local blocking queue didn't have the entry for the current remote execution job ID, the caller of the remote execution on Node2 ended up in blocking state forever, waiting on the local blocking queue. To resolve this, the code has been updated to ensure the blocking queue is created and stored in the local queue cache before publishing the remote job message.
INC-192979 · Issue 679042
Cache support added for Runtime Context
Resolved in Pega Version 8.6.3
System performance has been improved by adding cache support for System-Runtime-Context management.
INC-193153 · Issue 686295
Restored local blocking queue cache
Resolved in Pega Version 8.6.3
After update, it was not possible to bring up secondary VBD nodes after restarting. Investigation traced this to earlier work done to resolve a memory leak issue, in which stale entries for local blocking queues were removed from cache. This resulted in modifying the queue listener logic to use "cache.getQueueIfPresent(jobId)" instead of "cache.getQueue(jobId)". Because the listener was not creating the cache if it was not present and the cache which held the local blocking queue didn't have the entry for the current remote execution job ID, the caller of the remote execution on Node2 ended up in blocking state forever, waiting on the local blocking queue. To resolve this, the code has been updated to ensure the blocking queue is created and stored in the local queue cache before publishing the remote job message.
INC-194084 · Issue 686137
Catch added for missing DelayedItemsDataFlowService run options
Resolved in Pega Version 8.6.3
The exception "Caused by: java.lang.IllegalStateException: Loaded a work object [DelayedItemsDataFlowService] while no run config was present" was logged while initializing the DelayedItemsDataFlowService, causing a shutdown. Investigation showed this was caused by corrupted data in the database post update, where the database was missing a row in pr_data_decision_ddf_run_opts representing the run options of 'DelayedItemsDataFlowService' while the work object record was present in the database. To resolve this, an update has been made to catch exceptions generated by DataFlowService and report them as logs and alert. This will prevent the startup task from failing and stopping the process.
INC-196478 · Issue 683131
CORS policy updated for GET streams
Resolved in Pega Version 8.6.3
CORS (Access-Control-Allow-Origin) support has been added to handle Stream calls during GET requests.
INC-201338 · Issue 690897
Restored local blocking queue cache
Resolved in Pega Version 8.6.3
After update, it was not possible to bring up secondary VBD nodes after restarting. Investigation traced this to earlier work done to resolve a memory leak issue, in which stale entries for local blocking queues were removed from cache. This resulted in modifying the queue listener logic to use "cache.getQueueIfPresent(jobId)" instead of "cache.getQueue(jobId)". Because the listener was not creating the cache if it was not present and the cache which held the local blocking queue didn't have the entry for the current remote execution job ID, the caller of the remote execution on Node2 ended up in blocking state forever, waiting on the local blocking queue. To resolve this, the code has been updated to ensure the blocking queue is created and stored in the local queue cache before publishing the remote job message.
INC-202004 · Issue 692354
Hotfix documentation updated to point to Hotfix Manager page
Resolved in Pega Version 8.6.3
The readme file attached to hotfix downloads contained an outdated reference to use "PRPC Hotfix Installer on the Update Manager landing page." This has been updated to point to the Hotfix Manager landing page.
INC-164775 · Issue 681240
Web page generation security updated
Resolved in Pega Version 8.6.3
Cross-site scripting protections have been enhanced around web page generation.
INC-167704 · Issue 671629
Email timing updated to ensure content captured
Resolved in Pega Version 8.6.3
Outbound email replies constructed using a pyReply section were intermittently blank if the 'Send' button was clicked immediately after adding text. This was traced to the blur not happening immediately on click of the submit button, and has been resolved by introducing window.blurDelay to ensure the data is captured. The delay time is configurable, and by default is set to 200ms.