INC-146752 · Issue 602933
File Listener made more resilient
Resolved in Pega Version 8.5.2
When file listener encountered a FileNotFoundException as a consequence of sporadic AmazonS3Exceptions, the listener was disabled and no retries were made. In order to make the file listener more resilient, FileMatchConcentrator has been updated. While file listener is running and trying to get the next set of files, if the isDirectory() method returns false due to a non-existent directory or some other intermittent issues, instead of throwing an exception and shutting down the file listener, the system will now log the exception and continue.
INC-147140 · Issue 604369
Email listener update for Microsoft Exchange server
Resolved in Pega Version 8.5.2
After upgrade, TooManyObjectsOpenedException/MapiExceptionSessionLimit errors were seen when starting the email listener. Investigation showed that when the listener was started, two sessions were getting opened and then not closed properly. This was a method originally intended to allow the system to re-use the session to minimize performance overhead, but it is not well-suited for use with Microsoft Exchange server as the Exchange server is unable to cleanup idle sessions. As a result, too many MAPI sessions were opened and led to an authentication exception while opening additional sessions. To resolve this, an update has been made so the system will close the session while the listener sleeps. This stop, restart and graceful shutdown scenario for single threaded email listener scenarios will create a new session every time and close it properly.
INC-147716 · Issue 603238
Warning added to indicate if QP/JS have been disabled via DASS
Resolved in Pega Version 8.5.2
Search was not working, and the error “The Flow Action pre-processing activity pzLPSearchManagerMainActivityWrapper failed: java.lang.NullPointerException” appeared in the search landing page. Investigation showed that the environment was configured with disabled BackgroundProcessing, which prevented the QueueProcessor framework from working. There was no notice in the UI of this condition. This has been resolved by adding a warning that will appear if background processing is disabled.
INC-148944 · Issue 604100
Email Listener auto-reply evaluation updated
Resolved in Pega Version 8.5.2
Email Listener auto-reply evaluation updatedAfter upgrade, messages were being read but not getting processed for a specific Email listener (RCEmailListerner). The error "Email flagged as an autoreply email and will not be processed" appeared in the logs. Previously, an email was not considered to be an auto-reply only when the 'auto-submitted' header didn't exist or existed with value 'no'. This caused issues with auto-forward or auto-redirect emails where 'auto-submitted:auto-generated' could be in the header. Due to this, email was marked as auto-reply and email listener stopped processing it. To resolve this, the system has been modified to mark the message as auto-reply if it finds 'auto-submitted: auto-replied' in the header, but not 'auto-submitted:auto-generated'.
INC-149375 · Issue 607829
Adjusted email listener behavior for authentication failures
Resolved in Pega Version 8.5.2
After upgrade, email listeners were not staying up during connection outages. This was traced to the handling of authentication failures when trying to reconnect, and has been resolved by changing the disconnected listener state to sleeping and raising an alert for authentication failures.
INC-149466 · Issue 607610
Fixed alias assigned to custom categories to handle Oracle limitations
Resolved in Pega Version 8.5.2
When trying to access CHAT via interaction portal, Oracle SQL was fired with incorrect syntax. This was traced to an Oracle limitation of 30 characters on the length of the table name, table alias name, or column name in database versions prior to 12.2. This is caused an SQL exception if the Pega class name was more than 30 characters. To prevent this, a fixed alias has been assigned to the custom category table.
INC-150271 · Issue 608944
Fallback added for calculating date after upgrade
Resolved in Pega Version 8.5.2
After upgrade, the date value returned from Stored procedure failed to be mapped to "date" type property. Stored Procedure was used to get data from an external Oracle database and then handed to a Data Transform to map the values. When the Data was fetched from the store procedure, the date properties were mapping correctly, but when these values were mapped from the clipboard into the usecase using a Data Transform, the data for date properties was becoming corrupted. This was traced to logic differences between the versions: 8.2 generated resolveToDate while in 8.5 generates resolveToBigDecimal. In this case, resolve to big decimal was being called with aType='D' and aValue=20200918, and the 20200918 number was being interpreted as days since 1 Jan 1970 instead of as a date. This has been resolved by adding a fallback for the date calculation.
SR-D96430 · Issue 561524
Updated visibility condition expression handling for decimal values
Resolved in Pega Version 8.5.2
After upgrade, any visibility condition expression failed to evaluate decimal values that used precision. When 0 (zero) was entered as a value in the input field, a button that was configured to show was visible as expected. When the value was entered as 0.0, the input failed and the button did not show. The problem did not happen "Run visibility condition on client" was enabled. Investigation showed this was an issue with how the When expression was evaluated and calculated within JspWhenEvaluate, and has been resolved.
INC-129910 · Issue 582545
Improved performance for Queries on VBD keyspace
Resolved in Pega Version 8.5.2
Unrestrained VBD queries were causing poor performance for very large Cassandra clusters. This was traced to queries which were not restrained with a WHERE clause, and has eben resolved by updating two identified Cassandra queries that do not contain WHERE clauses to operate within token ranges rather than across the entire Cassandra cluster.
INC-136634 · Issue 591678
Thread contention resolved for InteractionHistoryQuery
Resolved in Pega Version 8.5.2
High thread contention was observed while running Inbound load tests. This was traced to pzLoadInteractionHistory invoking a generated strategy to retrieve ihFields from InteractionHistoryQuery using the getUsedInteractionHistoryFields() method: because this method is synchronized, it caused a bottleneck. To resolve this, the synchronized methods have been replaced with the appropriate data structures.