INC-128899 · Issue 578022
Resolved BIX Extract Summary Status Count mismatch
Resolved in Pega Version 8.1.9
A mismatch was seen between the summary of the Extract Summary Status Count in the Execution History stats versus the logs, for example the execution history saying 98.74% completed while the log says 100% or 100.45% completed. Investigation showed there was mismatch in the query based on the filter value given in the extract rule and the where clause in the query that resulted in an error in calculating percentage in case of any exception. This has been resolved.
INC-131488 · Issue 577697
Added handling for download of attachment with special characters
Resolved in Pega Version 8.1.9
If the name of an uploaded attachment contained a non-ascii character, the upload was successful but the downloaded file had the wrong name without any suffix. This was an issue on WAS or JBoss servers where filenames contained non-ascii characters, and the filename parameter in the content disposition header also contained these characters. To resolve this, the filename parameter in the content disposition header will be encoded as well along with the filename* parameter to handle non-ascii characters in the filename.
INC-133173 · Issue 573441
Landing page refresh modified to avoid frequent reloads
Resolved in Pega Version 8.1.9
Approximately every two weeks, clients were able to login but it was not possible to work as the landing page refreshed constantly until all of the nodes were rebooted and the issue was cleared. Investigation indicated the frequent reloads were related to the cacheing of the operator details, and this has been resolved by updating the datapage reload strategy based on 'when' so frequent reloads will be avoided.
INC-135550 · Issue 581375
Resolved slowness in retrieving case attachment from AWS
Resolved in Pega Version 8.1.9
Attempting to open a case attachment caused the application to slow over time and eventually became unresponsive. Restarting the Tomcat nodes improved the response time. This was traced to a null Buffered Input Stream not being closed correctly when using AWS, and has been resolved by adding the needed logic to PegaGadget-Pulse.pzStorageAttachSelectedFile. In addition, enhanced logging has been added to Embed-Repository-S3.pyGetFile. Enhancements have also been added to improve the use of AWS file storage: - Logging for AWS SDK connection metrics can be activated on a per-repository basis, either through the ruleform or through the DSS storage/class/:/enableMetrics. - INFO logging can be enabled on PegaAWSSDKMetricReporter to periodically output averages of recorded metrics for all registered S3 repositories with metric collection enabled, or INFO logging can be enabled on PegaAWSRequestMetricCollector to output recorded metrics on every client call for all registered S3 repositories with metric collection enabled. - The interval at which PegaAWSSDKMetricReporter logs metrics at can be configured with the DASS storage/AWSSDK/metricReportingInterval. This DASS is a system-wide setting, and not a per-repository setting. The default reporting interval is 90 seconds, and metric collection is disabled on all repositories by default.
INC-135823 · Issue 581322
Transient property passivation handling improved
Resolved in Pega Version 8.1.9
Frequent "com.pega.pegarules.pub.PRRuntimeException" errors were seen in the production log file while working on the WO. This was traced to corruption in the blob caused by transient properties during passivation. To resolve this, corrections have been made to the handling for the transient property entries in the blob.
INC-138675 · Issue 598087
Enhancements added to S3 repository implementation
Resolved in Pega Version 8.1.9
The following changes have been made to avoid redundant/unnecessary S3 SDK calls to look-up metadata for files/folders related to integrated S3 Repository API implementation: Provided storage/AWSSDK/enableSDKMetrics DASS to enable AWS SDK metrics for S3 repositories system-wide to troubleshoot performance issues Added timers for Pega platform repository APIs. To see these timers in Pega application log, set log level to WARN for the log category pxIntegration.Repository.S3 and set log level to DEBUG for the logger com.amazonaws.latency Optimized FileS3Adapter.getMetadata() by avoiding object-metadata lookup for directories and caching rootpath directory metadata for 5 mins Handled exceptions while uploading file to S3 bucket and convey appropriate error message to RepositoryManager.createFile() API consumer Refined DEBUG logging and introduced new loggers to emit stacktraces Enhanced RepositoryManager.initCache() and FileStorageManager.registerStorageClasses() to maintain non-overridable repositories (that are initialized based on DASS/DNode settings on node start-up) and to prohibit overriding the same.
INC-142036 · Issue 594578
Additional BIX logging added
Resolved in Pega Version 8.1.9
In order to improve the ability to trace and resolve issues related to BIX extract rule failures, additional diagnostic logging has been added.
INC-142188 · Issue 600328
Resolved parent lock sending child item to broken queue
Resolved in Pega Version 8.1.9
If the ServiceLevelEvents agent tried to process the queue item for a child case but encountered a lock error because the parent case was locked, the queue item was immediately going to the Broken-Process status instead of re-queueing the item to try again in 15 minutes. If the property was set to 'Copy data from a data page', the item was re-queued. To resolve this, the unwind and forward chain calls have been reversed. A dynamic system setting is available to reset the change.
INC-143195 · Issue 596845
BLOB utility modified for better memory usage
Resolved in Pega Version 8.1.9
An out of memory error was encountered when running the utility for handling corrupted BLOBs. This has been resolved by modifying the utility to get the rows in batches.
SR-D36826 · Issue 550273
LastAccessTime returned for MDB listeners
Resolved in Pega Version 8.1.9
The lastAccess time for the JMS listener was not being updated. Investigation showed that lastAccessTime was correctly updated whenever isStopping() was called, but isStopping() was not called for MDB listeners because the MDB listeners' state is managed by the app server. This caused accessTime to be empty. To resolve this, ListenerStateImpl has been modified to return mRequestTime as the lastAccessTime if the listener is of type MDB.