INC-155732 · Issue 619482
REST connector creation errors resolved
Resolved in Pega Version 8.3.6
Attempting to create REST Connectors via the dev studio wizard using live endpoint invocation as "Add a REST response" was failing with a java.util.LinkedList error. This had a workaround of either running the REST wizard with file upload samples or configuring them directly on the rule form. In addition, REST Connectors were not executing if both the DEBUG level logging was turned on and the request had no headers, which had a workaround of using any other logging level (INFO, ERROR). These issues have been resolved by updating the system such that pyResponseHeaders are populated appropriately, and if there are no headers in the request, the system will not try to remove the trailing comma that would have been introduced in the oLog message.
INC-157691 · Issue 630398
Traffic handling added for offline pod condition
Resolved in Pega Version 8.3.6
If one of the pods in a cluster went down and failed to restart by itself due to Hazelcast Cluster rejoining issues, there were intermittent issues of non-availability of the system. Investigation showed this was due to traffic being routed to the broken pod because the health check returned a false positive. This has been resolved by adding an update to return failed status when the exception "java.lang.IllegalStateException: Cluster has not started or is not fully initialized." is encountered.
INC-158045 · Issue 646488
Locking added to avoid null pointer error for auto-populate property
Resolved in Pega Version 8.3.6
After configuring the auto populate property "OrgProduct" which referred to a data page, the system experiencing heavy load led to the property not getting properly initialized. This resulted in a WrongModeException and NullPointerException. To resolve this, the system has been updated to lock the requestor when Queue Processors execute their activity. This will prevent race conditions and concurrent modifications if other threads are accessing the same requestor.
INC-161952 · Issue 645671
Race condition resolved for input/output pipe streams
Resolved in Pega Version 8.3.6
Writing to S3 using file data set was failing with the error "Exception occurred while uploading file". The system was relying on PipedInputStream for getting the data from the file while uploading, which needs to be connected to PipedOutputStream which holds the data to be uploaded. Investigation showed a race condition was occurring where for some use cases the reading of inputStream was happening before the connection of I/P and O/P streams, resulting in a "Pipe not connected" error. This has been resolved.
INC-162987 · Issue 641749
XSS protections updated for SOAP WSDL
Resolved in Pega Version 8.3.6
XSS protections have been updated for reading WSDL nodes.
INC-163469 · Issue 645952
Agent Schedule "Processed On" updated to allow extended schedule dates
Resolved in Pega Version 8.3.6
When scheduling or creating a queue entry in System-Queue-DefaultEntry using the Queue-For-Agent method in an activity, setting a value for "MinimumAgeForProcessing" of more than 24 days was passed as '2.074e+9' (the value in milliseconds). Because the parameter is interpreted as an integer value, this number caused an overflow Integer.MAX_VALUE error that then returned the incorrect value of 0 and events ended up scheduled for the current day. The queue item was created correctly when "MinimumAgeForProcessing" was less than or equal to 24 days. This has been resolved by updating the logic for reading the value.
INC-163863 · Issue 632425
Monthly agents run correctly on non-English locales
Resolved in Pega Version 8.3.6
Nodes with non-English locales were not starting when using an Agent with a monthly execution pattern. This was due to incorrect handling of the user locale, and has been resolved.
INC-164472 · Issue 635112
Performance improvements for archiving and purging
Resolved in Pega Version 8.3.6
Archiving and purging jobs were not working in Prod. Investigation showed this was caused by the system timing out. To resolve this, improvements have been made to purging by batching the deletions and refactoring the Where condition to simplify the complex expression queries that determine the cases to be archived.
INC-166498 · Issue 637350
Locking and classmap improvements
Resolved in Pega Version 8.3.6
Threads were getting stuck inside classMap and tableInformationMap, causing nodes to go down. This was traced to issues with class map performance and locking, and has been resolved by replacing the lock library with a newer version and refactoring the tableInformationMapImpl class to use a concurrent hashmap instead.
INC-166498 · Issue 637054
Performance improvements for sites with a large number of tables
Resolved in Pega Version 8.3.6
Performance impacts were seen when there were a very large number of tables in the database and the cluster/node persistence jobs were running. This was traced to the volume of metadata / schema introspection queries fired from the pyPersistNodeState and pyPersistClusterState jobs along with the Classmap cache invalidation / lookup queries, and has been resolved by improving the code to avoid database introspection when the current number of tables is greater than a maximum value.