Pega Infinity™ includes an industry-standard patch release process to simplify and maintain high-quality releases. Several cumulative patches are released a year for each release stream. The Resolved Issues page contains information about client-reported issues that have been addressed for the specific release.
For a complete set of the Resolved Issues for this release, download the PDF attachment at the bottom of this page. (Note that you must be logged in to access the attachment.)
For information on downloading this patch, see Pega 8.6.5 - Patch Release Available.
Low-code Application Development
Case Management
8.6.5 Patch Resolved Issues for Case Management
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-215499 | 714489 | Assignment routing updated for swimlanes | Routing options were not working for workbasket routing when using swimlanes. Investigation showed that when an assignment was added inside the swimlane, the assignment type value was defaulting to Worklist on submit of the assignment property panel. Manually changing it to workqueue did not make the routing section visible. This has been resolved by adding a 'visible when' condition to the "Route To" field to check if the assignment is not in the swimlane. The same check has been added to a 'disable when' condition for the 'Assignment type' drop down. |
Case Management |
INC-216406 | 723284 | Attachment preview works for filenames with special characters |
Attempting to preview attachments from the file and attachments view was not working if the file name had special characters. The browser console showed errors complaining that an unrecognized character was present. This has been resolved by adding crossScriptingFilter to sMemo to allow special characters in the attachment preview filename. | Case Management |
INC-215354 | 712665 | Data- flow actions working in Bulk Process | When trying to render a flow action whose 'applies to' class was inherited from Data-, an error was generated indicating that the flow action could not be found. This was traced to non Work- flow actions not being correctly populated, and was an inadvertent side effect of work done to set class for inheritance if Work- is not present. This has been resolved by updating the pzPreBulkProcessModal activity to set the TempWorkPage class to Work- only if .pyActionName is pyTransferAssignment. | Case Management |
INC-208394 | 713554 | Error handling updated for Data- Work-Attach-File | If a file is uploaded which has the same name as an existing case attachment or if any issue happens during file attachment, the attachment will fail and an error message is displayed with an option to cancel the operation. However, even if the upload was not successful the related Data-WorkAttach-File instance was created and persisted in the Workattach table. Investigation showed this was caused by the process for persisting the Data-WorkAttach-File record occurring prior to the process that returns the errors, and this has been resolved. | Case Management |
INC-213654 | 726002 | Logic added to skip FLAudit class during compliance check | An application compliance error was seen related to classes starting with FLAudit, which are created as part of field level audit history for the classgroup validation. This has been resolved by adding an extra condition to the Rule-Obj-Class-.Validate activity to check if inheritance is from "FLAudit-" class, and if so to skip them as their purpose is similar to History- classes which are ignored for the class group validation. | Case Management |
INC-209404 | 710406 | MultiFilePath supports file upload with leading special character | Updates have been made to the pzMultiFilePath control in order to support uploading a file with a special character such as "%" at the beginning of the name. | Case Management |
INC-210787 | 710393 | Multiple child case assignments open correctly in Ajax container | After configuring two cases with a parent-child relationship, the child case was configured with a parallel process with two assignments. When trying to open the child case assignments in an Ajax container, only the first assignment would open. Investigation showed this was caused by the "reloadAlways" parameter not being sent to openAssignment due to a custom control being used. To resolve this, the reloadAlways has been added as an argument to the OpenAssignment function call in pyAssignmentsLabel. | Case Management |
INC-188469 | 714844 | Updated retainLock for DoClose activity | After sending an external email notification from a case, attempting to use the "close" button resulted in an access denied error. This was traced to a missed use case for recent security improvements which resulted in not setting the required parameter retainLock for the DoClose activity, and has been resolved. | Case Management |
Cloud Services
8.6.5 Patch Resolved Issues for Cloud Services
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-210513 | 710342 | Added handling for clustered index on the pr4_rule table during migration | When attempting to migrate the rules schema to RULES85 and temp data schema DATA85, the upgrade was becoming stuck in a loop while working to generate declarative indexes for Rule-HTML-Paragraph. Investigation showed the infinite looping happened only for classes mapped to the pr4_rule and with instance count of more than (num of threads * batch size). This was due to the presence of a clustered index on the pr4_rule table causing the resultset to return an infinite number of records in SQLServer, and has been resolved with an update to leverage the total record count to iterate the resultset instead of depending on the resultset.next(). | Cloud Services |
INC-215877 | 715235 | Handling added for Oracle "NUMERIC" type | When a product rule was created in an environment using Oracle, importing the product into the cloud environment with database table schema changes resulted in errors. This was traced to a change in Oracle's JDBC driver which was reporting Number as a JDBC "NUMERIC" type instead of the previous "DECIMAL". Pega uses the NUMBER data type and expected a type=DECIMAL for an Oracle number, causing the errors. This has been resolved by adding a check for flex numbers if column is NUMERIC. | Cloud Services |
INC-218457 | 713988 | Updated debug logging | Debug logging within IndexReferenceSynchronizer and FastLoader has been updated. With this update, IndexReferenceSynchronizer debug logging will indicate what the action is for each instance, FastLoader will include information about the keys being loaded and statements being executed, and duplicate logging has been removed from BatchSQLExecutors. | Cloud Services |
Conversational Channels
8.6.5 Patch Resolved Issues for Conversational Channels
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-202878 | 713792 | Handling updated for social messaging items with very large embedded images | Job scheduler was running out of memory while handling large/multiple files, causing nodes to crash while handling Social Messaging items. Inline images were also not being sent in the ACK email. Investigation traced this to a custom job scheduler and activity used to create PDFs from email communication and send the PDFs to a third- party system. This used the standard Email Triage/PegaSocial functionality for the emails, which were stored as instances of PegaSocial-Message. The custom Job scheduler and activity then leveraged the Data Page D_pxEmailPosts to retrieve the emails in order to harvest the text from the emails. The issue occurred when a number of the emails had multiple or large embedded images in them, meaning the PegaSocial- Message instances are very large. This resulted in the node running out of memory and crashing. To resolve this, code has been added to support inline images in ACK email and the complete message from Pulse will be used instead of the original message as the email body for the ACK email. | Conversational Channels |
INC-211974 | 706616 | UpgradeInteractionCase modified to update work page on save | After update, service cases were failing to unpend when using a custom data transform that accessed the D_CorrespondenceCase data page. Investigation showed the D_CorrespondenceCase data page was internally using the D_pxGetInteractionCaseDetails data page; this call upgraded and saved and committed the case but this commit released the lock which the custom data transform had acquired. Because this happened before accessing the CorrespondenceCase datapage, it led to an error while committing the service case details. To resolve this, the postprocessing activity "pyUpgradeInteractionCase" of D_pxGetInteractionCaseDetails has been modified to write the update on the work page as soon as a save is performed. | Conversational Channels |
Data Integration
8.6.5 Patch Resolved Issues for Data Integration
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-220652 | 721386 | Added explicit clearing for AsyncServiceManager cache | Heap size for multiple JVMs increased after update. Investigation showed data pages loaded via Load-DataPage during service processing using requestor pools were cleared after each service interaction but the AsyncServiceManager cache was not cleared. To resolve this, an update has been made that will clear the async cache when the requestor is returned and when flush all is called. | Data Integration |
INC-213124 | 724631 | AWS file type added for S3 uploads | The correct content type was not getting set when uploading images to S3 using the "pxPublishArtifacts" activity. This has been resolved by adding the content type for AWS files while uploading to S3. | Data Integration |
INC-210855 INC-216381 |
715822 716615 |
BigDecimal handling updated for @sum function | The @sum function was not behaving correctly. This was traced to the java code in the 'sum--(ClipboardPropertyCollection)' function which was not properly converting the double to Bigdecimal for some of the inputs like 500, 500, 600.11. This has been resolved by modifying the function to convert input properties to BigDecimal, add BigDecimal values, and return the result. | Data Integration |
INC-222791 | 721372 | GET API will skip case locking | After update, performing a GET call on an assignment was unexpectedly locking the case. This was traced to a difference in handling: Pega 8.3 performed an Obj-Open-By- Handle of the workobject without acquiring a lock, while Pega 8.6 calls Assign- .acquireWorkObject which acquires a lock on the work object thereby affecting the other requestors from accessing the case. An initial fix for this issue enabled optimistic locking, however this did not resolve the issue in scenarios where there were concurrent calls and optimistic locking was not used. This additional update will skip locks on the work object for V1 GET assignments/{id}, GET assignments/{assignmentId}/actions/{actionId} and GET cases/{caseId}/actions/{actionId} and corresponding action refresh APIs. |
Data Integration |
INC-211977 | 713461 | Handling added for large BIX Postgres data sets | BIX extracts were causing timeouts or JVM out of memory errors. This was traced to the Postgres JDBC driver ignoring fetch size in auto-commit transaction mode, which led to everything being loaded into memory at once. To resolve this, changes have been added to support fetch size for large results when using PostgreSQL database for BIX Extraction. | Data Integration |
INC-219627 | 715996 | InvokeHTTPConnector security updated | "Allow invocation from browser" has been disabled for InvokeHTTPConnector, and "Require authentication to run" has been enabled. In addition, an unsafe reflection used to load JCIFS libraries for NTLM operations has been removed, which removes support for custom JCIFS libraries in Connect HTTP. | Data Integration |
INC-207159 | 707617 | Localization added for delegated datatype tab | Localization was not working for the title of a thread which opened when attempting to edit the delegated datatype. This has been corrected. | Data Integration |
INC-203040 | 721057 | Null value handling added for CBU | After update, changes made to the Operator record were not reflected and the Actions menu in Operator record did not show all available actions after the Operator was saved. This has been resolved by adding handling for null values passed as String for arguments from cbu.xml for the PegaCBU utility. | Data Integration |
INC-176138 INC-198555 |
723082 720901 |
Performance improvements for save-as | Performance issues were seen when using save-as for rules such as Declare expression, When rules, activity, etc. This was traced to a very large number of extra database queries that were being executed while building the Declarative Cache. To resolve this, an update has been made so the queries used for the Declarative Cache will only be executed when required. | Data Integration |
INC-186904 | 669744 | Removed duplicate alert events | Duplicate applications were seen in the PDC Event Viewer, e.g. ‘Adviser 01.01’ and ‘Adviser:01.01' - one without a colon and one with a colon. Investigation showed that alert events logged via AsyncServices were being logged as "ApplicationName Version" instead of "ApplicationName:Version", and this has been resolved by updating AsyncServiceBatchTask.java to use the expected application name while logging alert events. |
Data Integration |
INC-211655 | 714061 | Removed extra space in Malaysian locale | For the ms_MY locale, an extra space was being appended to Number formats, such as " 0", " 1". This has been corrected. | Data Integration |
INC-219233 | 716177 | ReportStats delete query performance improvements | A database connection spike was maxing out the allowed database connections, causing login delays and termination of stream nodes. Investigation traced this to the delete query on pr_log_reportstats, which was a full table scan generated from SQLGeneratorPostgres.purgeTableContainingClass. To improve performance, the full table scan sub-query has been removed and 'limit' syntax has been added to run the necessary deletion in batches. | Data Integration |
INC-193485 | 695641 | REST authentication settings use fully qualified name for resolution | The application setting used in REST connectors for authentication was resolving to similarly-named rules instead of matching the exact name of the rule. This has been resolved by enhancing pzGetSettingID to use both parts of the fully qualified name (name and category) provided by the pzSettingsORA control when determining which setting from the report to return. |
Data Integration |
INC-214451 | 721970 | Rest connector passes RequestAttachmentPage to child requestor | While invoking the Rest Connect from a data page, the error "InboundMappingException: Exception occurred while mapping incoming response" was generated. Requests with "Content-type:multipart/form-data" require "pyRequestAttachmentPage" or "pyResponseAttachmentPage" to be populated with correct values. When Rest-Connector was executed in parallel, those pages were not copied to the child requestor and the rest call executed from the child requestor did not have correct header and body. To resolve this, MethodConnect.java has been updated to correctly pass pyRequestAttachmentPage to the child requestor. |
Data Integration |
INC-219453 INC-219995 |
716000 717158 |
Security update enhanced to support custom implementations of InvokeAxis2 | The QueueProcessor activity indirectly invokes a Connect-SOAP. After installing the Security A22 patch, custom implementations on InvokeAxis2 reported runtime failure. This has been resolved by replacing reflection library use with explicit type checking and casting to get the array length in step 14 of InvokeAxis2. | Data Integration |
Decision Management
8.6.5 Patch Resolved Issues for Decision Management
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-217290 | 721376 | Added support for creating predictive models in Production | While creating a new predictive model rule in Prediction studio, the case was going into broken process after selecting the template with the error message "Error loading D_ProjectList , Reason : No databases defined in properties file:/databases.properties". This was an unexpected use case for creating models in Production level, and has been resolved by updating the flows to turn off the draft mode in this scenario. | Decision Management |
INC-218757 | 714553 | AESRemote updated to be asynchronous | The Autonomic Event Services (AES) agent PushCDHMetrics became stuck and was not pushing metrics to the console. This has been resolved by updating AESRemote to be asynchronous. | Decision Management |
INC-222561 | 721043 | Check added for destination type for distribution test reports | When there were two output destinations in the system, one of type VBD and another of type Database table and both had the same name, an incorrect class was set for distribution test reports and an error was generated when trying to open the report. Investigation showed the system was only checking for the name of the destination and not its type; this has been resolved by adding a pzSetSimulationOutputClass data transform to check for the destination type in addition to the destination name when setting the class for reports. | Decision Management |
INC-217991 | 714333 | Display of 'check all' check box made configurable | A new overridable 'when' rule pyShowSelectAllCBInSurvey has been added to allow customizing a survey to hide the 'Select all' checkbox in the ComplexQuestionCheckboxTemplate section. | Decision Management |
INC-218145 | 715680 | DSS introduced to control DSM clipboard page serialization | When using a Kafka dataset to consume a message from an external topic that had an attribute name with a special character contained in a page list structure, using a JSON data transform for the mapping in a realtime dataflow resulted in the error "Exception in stage: KafkaDS; LegacyModelAspectInvokableRuleContainer.invoke-Exception encountered a :java.lang.UnsupportedOperationException." To resolve this, a new DSS dataset/CLASS_NAME/DATASET_NAME/JSONDataTransform/deserialization/useDSMPa ge has been introduced. When the value is set to true, the process will follow the previous behavior of DSM clipboard pages being generated when Kafka records are deserialized using JSON data transform. When the value is set to false, the JSON data transform will generate regular clipboard pages and convert them later to DSM clipboard pages. This would avoid errors when a JSON data transform calls methods from the Clipboard API that are not implemented by DSM pages. This DSS is set per data set instance. CLASS_NAME and DATASET_NAME are placeholders which should be replaced by data set's pyClassName and pyPurpose property values. In addition, a similar DSS, dataset/CLASS_NAME/DATASET_NAME/JSONDataTransform/serialization/useDSMPage, has been introduced for serialization. |
Decision Management |
INC-208976 | 719166 | Enhanced SSA metrics made available | In order to better diagnose delays related to the time when a Campaign is scheduled to start and the time when the Dataflow actually starts to run, an update has been made which will generate detailed metrics to cover some of the strategy execution key performance intensive areas. Additional lower level internal metrics related to SSA engine execution have also been made available by way of a DSS to collect more runtime insight for diagnosis. To enable the collection of these Level 2 SSA internal metrics, set the dataflow/shape/strategy/detailed_metrics/level2 DSS in the Pega- DecisionEngine rule set to 'true'. A comprehensive set of enhanced metrics will be available in Pega 8.8. |
Decision Management |
INC-215601 | 721524 | Explicit Kerberos renewal added for HDFS | When using WebSphere/IBM with Hadoop connectivity, the Kerberos credentials were expiring after 7 days and causing connectivity failures. Investigation showed the Apache Hadoop HDFS Client was not renewing the ticket even when there were operation calls every few hours. To resolve this, an enhancement has been added to the Pega HDFS client which will explicitly tell Hadoop authentication layer to check for Kerberos ticket renewal instead of relying on Hadoop built-in logic. | Decision Management |
INC-220174 | 716384 | Improved cleanup for data from joining nodes | A Cassandra node that is down for longer than the grace period (default 10 days) can introduce zombie data that creates instability when it returns to the cluster. This can include VBD partition summary data that was deleted and can break loading rules and cause the service to fail to start up. To resolve this, additional logic has been implemented to detect zombie summary records, including summary records without field descriptors and summary records without dictionaries having already been provided, and to read dictionaries from the latest summary record in case there are preceding zombie records with dictionaries. | Decision Management |
INC-202111 | 710105 | Logging extended for PRPCPropertyInfoProvider |
In order to assist with diagnosing issues with Kafka and JSON, additional logging has been added for PRPCPropertyInfoProvider. |
Decision Management |
INC-217728 | 712733 | Made CommitLog messages more resilient to class change | Persistent class mismatch exceptions were seen while refreshing the ADM models after updating from Pega 8.5. This was caused by changes to the Cassandra adm_commitlog message schema which caused the commit log messages generated to be incompatible with the deserialisation logic present in higher versions of Pega, but as the commit log messages had a time to live of 24 hours the issue self-resolved. However, this has been resolved by setting serialVersionUID for the ModelParameters class so CommitLog messages are now compatible with future minor and patch releases. | Decision Management |
INC-224038 | 723258 | Performance improvement for serviceregistry table queries | The expression filter ($1 - "SSR"."pytimeout") in the queries for service registry table caused full table scans which might result in performance issue and even risk of contention/locking. This has been resolved by replacing the pyTimeout column reference in filters to the default value = 9000ms so that performance for these queries can be improved. |
Decision Management |
INC-219186 | 720470 | Prefix allowed for aggregates Keyspace | Attempting to connect multiple Pega environments to an external Cassandra cluster with limited database access using the prconfig setting dnode/keyspaces_prefix resulted in the error "Unable to determine if cassandra table [aggregates.config] exists" while connecting to the aggregates Keyspace. This was traced to an incomplete implementation: the system allowed the keyspace to be created with the prefix, but queries used the keyspace name without the prefix. In order to support this use, an update has been made to ensure keyspace prefixes are used if present. |
Decision Management |
INC-213217 | 714194 | Updated context handling for executing data transforms in dataflows | When performing a sort operation in a data transform on a page list and invoking the Data transform through a Data flow, a java.lang.UnsupportedOperationException was generated on the sort step even though the data was correct. Investigation showed that the dataflows were using a different execution context than the context used for regular activity execution. An update has been made to ensure the correct context is being used while executing data transforms in dataflows. | Decision Management |
Low-code Application Development
8.6.5 Patch Resolved Issues for Low-code App Development
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-216935 | 714049 | Corrected decision table scroll bar display in resized section | Resizing a decision table window was causing the horizontal scroll bar to move out of the section while scrolling. This has been resolved by updating the HTML and adding the needed CSS. | Low-code app development |
INC-215785 | 722553 | Corrected logic for parsing imported Excel formula cells | Integers specified as cells with formulas in Excel were getting an additional ".0" in them due to them being parsed internally as doubles during the floating point arithmetic of the Apache POI library. This has been resolved by modifying the logic in ExcelUtils.java to apply DataFormatter to get the string value instead of an integer by default for a formula cell. | Low-code app development |
INC-213918 | 714454 | Discard button works consistently | After check out, the discard button was not working consistently for decision tables or MapValue. Investigation showed this occurred when an exported file was being downloaded in the same window, as the thread would be busy with the file and not able to perform the discard action on the window. To resolve this, the configuration for the download on the same window has been removed, exportToDecisionTable has been modified to handle an iframe, and a runScript action has been added to register the exportToExcel activity and download in iframe. | Low-code app development |
INC-209158 | 722412 | Loop handling updated for Decision Table OR conditions | The system was crashing when saving or checking in a decision table with 21 columns and 20 rows where each cell contained 1, 2, or 3 OR conditions. Investigation showed this was caused by an indefinite number of loops when 'or' conditions were used in the test consistency activity, and this has been resolved with an update which ensures only the specified number of loops are performed. | Low-code app development |
INC-220770 | 718027 | Null check added to getBaseRef | When using a customized Cosmos portal that included tabs, some of the Pega APIs were not available in the child frame and javascript errors were generated when calculating the clipboard path for live UI elements. This was traced to invalid references to "pega.api.ui.util.getBaseRef", and has been resolved by adding null checks to the getBaseRef API call to make sure javascript errors are not thrown. |
Low-code app development |
INC-211248 | 713158 | Survey navigation type set for use with complex CB refresh | After upgrade from Pega 7.1 to Pega 8.5, creating a legacy survey used in pxSurveySection with a complex CB question page that contained a refresh option had collapsed tree navigation, the survey name was blank, and duplicate labels were found in picklist questions. To resolve this, an update has been added which will set the navigation type in parameters after a complex CB refresh and skip page copy while upgrading survey work objects. | Low-code app development |
INC-220385 | 720010 | Corrected Branch Code Score / Unit Test Rule count issue | When reviewing branch quality, the "Rules with Test Cases" indicated 5 out of 7 rules were covered, but no rules were listed in the "rules without unit tests" tab and all rules within the branch had unit tests where applicable. Investigation showed the filter for withdrawn rules was not working correctly and they were shown as not having test cases. In addition, when a test case was in a branch but its tested rule was not in the branch, the test pass percentage calculation was being skipped and displayed as 0%. These issues have been corrected. | Low-code app development |
INC-205666 | 702934 | Database table correctly prevents deletion if there are descendant classes | When deleting a concrete class with descendant classes via an activity (Rule-.Delete), the Rule-Obj-Class.ValidateDeleteInternal activity was throwing an error message indicating the class could not be deleted due to descendant classes. However, the corresponding database table rule was deleted anyway. Investigation showed this was caused by ValidateDeleteInternal not reaching the Obj-Save-Cancel step. This can be fixed by modifying step 11, the post when conditions, to jump to END and set the END label at the Obj-Save-Cancel step instead Exit-Activity, but this issues has been resolved by updating all failure states to run end step. In addition, security has been updated to disallow "Allow invocation from browser". |
Low-code app development |
INC-205938 | 721200 | Improved handling for heavy use of PushDailyUserData | The PushDailyUserData agent was causing utility node performance issues due to the amount of data it was fetching from pr_hourly table. To resolve this, an update has been made which will run the agent once per day and chunk large data. | Low-code app development |
Mobile
8.6.5 Patch Resolved Issues for Mobile
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-205683 | 702561 | Data transform actions supported in offline app | Support has been added for pre- and post-processing data transform functionality and validation in the local actions of the offline app. | Mobile |
INC-198193 | 723624 | Error correctly shows for each attempt to upload an oversize file | The error message indicating an uploaded file exceeded the permitted file size was only shown on the first try on Android. Subsequent attempts to upload the same oversize file did not generate any error. This was due to a persisting value, and has been resolved by explicitly clearing the input value for the mobile browser upload. |
Mobile |
INC-222126 | 721903 | Improvement for mobile display error related to harness timing | After updating from 8.1 to 8.6, working very quickly on mobile to create a case and refresh it resulted in a "Display error" screen that included the message "Failed to find instance @baseclase.pyCreate of type Rule-HTML-Harness". This was caused by the system not being initialized with the needed content and some target parameters therefore being evaluated as null. A preliminary fix for closeDocCallback when WebView is not loaded has been added which has significantly reduced the frequency of this issue. Additional work will be done towards a complete resolution in a future release. | Mobile |
INC-191412 | 692674 | Large Data page join condition available for Mobile |
Support for a join condition has been added to the Large Data page for use in Mobile to match the use available on desktop. |
Mobile |
Project Delivery
8.6.5 Patch Resolved Issues for Project Delivery
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-214974 | 721181 | Documentation updated for accessing D_pyUserInfoClaims | When logging in using Org Credentials, trying to get the user details from D_pyUserInfoClaims did not return any information. This was due to the D_pyUserInfoClaims datapage being available only after authentication, so the claims information was not available during operator provisioning. The documentation located at https://docs.pega.com/security/86/mapping-operator-information-openid- connect-sso-authentication-service has been updated to include the following note: "This page becomes available and can only be accessed post authentication." | Project Delivery |
Reporting
8.6.5 Patch Resolved Issues for Reporting
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-211590 | 711018 | Auto-complete and calendar popover alignment corrected | An issue with the container alignment of the auto-complete and calendar dropdown popovers has been resolved by removing styling in the pyReportEditorStyling .css which was causing the issue. | Reporting |
INC-217475 | 719043 | Corrected duplication of records in Elasticsearch | After creating a dedicated index for a data class, modifying any data record for external Data/Work classes caused duplicate documents to be created in Elasticsearch. This has been resolved by updating the Reindex _id field to use the pzInsKey value instead of an auto-generated string. Once this update is in place, re-index is required to remove already created duplicates from the index directory. |
Reporting |
INC-185824 | 676630 | Corrected filtered column list sorting in Report Browser | Sorting was not working in Report Browser for a column list when a filter category was selected. This has been resolved by modifying the pzReportListSort activity to set the correct parameters in step-1 and setting pzSetCategoryParam to retain the sortTitle parameter in step 1 with an added step -2 to call the pzReportListSort activity. | Reporting |
INC-210837 | 707179 | DateTime property correctly formatted in Report Editor | When a list report was created via the Report Editor, dragging and dropping a date time property which was embedded inside another page and choosing the format as Date and Time resulted in the property taking pxTextInput instead of pxDateTime. This has been resolved by updating the pzMergeAutoGenForProp activity to get the correct class name for embedded page properties. | Reporting |
INC-217974 | 715429 | Handling added BIX extraction failure when called from custom activity | After update, BIX extraction was failing but email from the schedulers indicated success. Investigation showed that when extract was called from a custom activity by calling pxExtractDataWithArgs, the stepStatusFail 'when' rule in the custom activity was not capturing all the exceptions specific to database extracts. This has been resolved by adding the necessary handling. | Reporting |
INC-205464 | 721607 | Performance improvements for KYC query | The GetApplicationKYCTypes report definition was exceeding the default maximum elapsed time of 30 seconds, causing all cases which were part of the due diligence milestone in Client Lifecycle Management framework to be auto-completed. This has been resolved by improving the KYC Items query logic by removing mergeJoin and adding HashJoin Hints. | Reporting |
INC-215062 | 722019 | Removed ORDER BY clause duplication when using MSSQL | After updating from Pega 8.4 to Pega 8.7, executing the query for the report definition generated the error "SQLServerException: Incorrect syntax near the keyword 'ORDER'." Investigation showed the ORDER BY clause was added to the Native SQL query from the standard dataflow background task and from the native SQL API as well when using an MSSQL database. This has been resolved by adding changes to restrict the order by clause if the SQL query has order by clause already for MSSQL. | Reporting |
INC-212157 | 721532 | Report filter values correctly displayed | The data page name was being displayed in report filters instead of actual values. This was traced to a missing step in the activity pzResolveCopyFilters which was needed to get the data page values in the report filter prompt, and has been resolved. | Reporting |
Security
8.6.5 Patch Resolved Issues for Security
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-212265 | 714015 | at+jwt header type support added | After upgrading from Pega 7 to Pega 8, using JWT validation in the REST service package with type "at+jwt" resulted in the JSON web token being rejected during signature verification with the error "header "typ" (type) "at+jwt" not allowed". Pega uses the third-party Nimbus jar to generate and verify JWT tokens, and this issue was traced to a difference in the versions of that jar: Pega 7.3 uses the nimbus-jose-jwt 5.1 version jar, while Pega 8.6+ uses the 8.20 jar version. Nimbus rejects at+jwt header types by default from the 8.0 jar version. To resolve this and improve backwards compatibility, at+jwt header type support has been added. | Security |
INC-217461 | 714310 | Key ID made optional for JWT | After update, Connect-REST services were failing with a Admin_Security_Token.Action error. This was traced to kID (key ID) being mandated following previous work done to address an issue. To resolve this and better support backwards compatibility, the kID has been made optional in the JWT header. | Security |
INC-201713 | 700221 | Resolved SSO logout error | After configuring prconfig/initialization/Urlencryption/default -> true and prconfig/initialization/SubmitObfuscatedURL/default -> required, logging in to any portal using SSO resulted in a 400 error when trying to log out. This has been resolved by adding a call to the encryption Rule-Utility-Function while calling logoff activity from 'pzSingleLogoutServiceRedirectV2'. | Security |
INC-202702 | 713726 | Ruleset creation process updated to maintain thread scope | On creating a ruleset, the system generated the error "There has been an issue. Please consult your system administrator." If browser cookies and site settings were cleared and the browser was relaunched before logging in and creating a ruleset, the issue did not occur. Investigation showed that the Application page was at the Requestor scope for some of the threads due to handling in the ruleset creation process that removed the Application page and recreated it in the default scope of the thread with the latest state. To resolve this, the process for deleting the Application page and recreating it on the Requestor page has been removed. | Security |
INC-216154 | 718236 | SMTPPort parameter will be passed to ForgotPasswordUtil | When a user triggered the "Trouble Signing in" function, the SentEmailNotification activity connection was trying to use port 25 even if the SMTP Port was configured as 587 in the Email Account instance. This was due to the SMTP Port not being passed to the SentEmailNotification activity, causing a fallback to port 25 for non-SSL connections. In order to ensure SendEmailNotification uses a specified port if configured, pySMTPPort will be passed to ForgotPasswordUtil.java. | Security |
INC-219208 | 717217 | Updated OAuth2 registration handling for modified application definition | After update, attempting to resave an application definition after any modification resulted in the error "Application OAuth2 client registration is failed. Error Message: PegaApp_XXBase:Client already exists". This was due to pxCreateRecord being called to create the authentication profile: as it was already present, it failed to create a new one. This has been resolved by changing pxCreateRecord to Obj-Save in this process. This change will only be applied on newly created applications using the Data- Application-OAuth2ClientRegistration instance. The solution for already exported applications is to delete the corresponding OAuth2 client (PegaApp_<application id>) and resave the application to create a new client along with the needed metadata. |
Security |
INC-222213 | 722507 | Updated support for Client Assertion in Open ID Connect to generate unique JTI | Following an update with an enhancement which added UI and code changes to support Client Assertion in Open ID Connect, the token expiry and issue dates were not getting set properly and the JTI was not getting generated. This has been resolved by adding code to generate a unique client_assertion on OIDC login with private_key_jwt so the JTI in client assertion will be be unique for every login. | Security |
System Administration
8.6.5 Patch Resolved Issues for System Administration
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-215937 | 713773 | Added exception handling for PageGroup alerts | Queue items were going to the broken queue if there was an issue fetching the alert configuration from the Queue Processor rule. The error "java.lang.IllegalArgumentException: Alert id cannot be blank" was seen. This has been resolved by adding exception handling while gathering alerts from PageGroup so that a malformed alert configuration will not cause overall failure of a processed message, but instead an empty alert will be returned if configuration-data is corrupted. | System Administration |
INC-218001 | 719922 | Error text revised for parameterized data page used for token generation | While trying to add a claim in the header of a Token Generation Profile instance, selecting Map From as "Clipboard" and trying to give any DataPage(parameterized) as the source property failed to be saved and the error "JWS Alias— Please provide correct algorithm key with correct key length." appeared. Changing the "Map From" to a Constant and giving a dummy value worked as expected. Tracer showed the error "declare page parameters not supported by PropertyReference", indicating the actual issue: at this time, the Token profile does not support using a parameterized data page. This has been addressed by ensuring an appropriate error message is shown on save of the token profile rule form when a parameterized data page reference is configured. The error will now read "The reference D_pzPreferenceStore[PreferenceOperatorID: "[email protected]"].pxObjClass is not valid. Reason: Parameterized data page reference is not supported." Support for a parameterized data page used with Map From will be taken as an enhancement for a future release. | System Administration |
INC-219566 | 721290 | Handling updated for CSRF in queue processor trace | The field level audit on properties was intermittently not being shown on the Audit history table for the first time for some users. This has been resolved by modifying the queue processor trace to better handle CSRF tokens. | System Administration |
INC-225519 | 724398 | Improved handling for thread resolution issues | Queue Processor/Dataflow was moving to STOPPED state due to failed records in its execution. Investigation showed there was a minor logic issue in the queue processor activity which allowed the Page-Remove step to be called even before the pages were actually created, and this has been resolved by improving the recovery from a cleared ThreadContainer which might cause thread resolution issues. | System Administration |
INC-217781 | 714185 | JobScheduler updated to better handle DST change | If a job scheduler was set to run on a weekly basis between 1 AM CET and 3 AM CET, the DST time change caused the job scheduler to skip that week. During DST, there is one 23-hour day in the year, and if execution time is set to that missing hour the system was throwing an IllegalArgumentException for the non-existent date. This has been resolved by adding a check that verifies whether a given date does exist; if it does not exist, the system will postpone execution time by one hour. | System Administration |
INC-218340 INC-218909 |
714663 715282 |
Override added to delete records for a stream dataset after processing | Kafka data was accumulating for a Stream data set due to huge volume of inbound calls. This has been resolved by adding support to override pyDeletedProcessed through a DASS in order to remove the records for a particular stream dataset (topic) as soon as they are processed by Pega. | System Administration |
User Experience
8.6.5 Patch Resolved Issues for User Experience
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-211911 INC-220459 |
713054 720884 |
Able to expand rows when other rows are expanded | When multiExpand, threadProcessing, and readonly flags were true, attempting to expand multiple rows at the same time collapsed already opened rows and generated an error indicating "target is not defined". This was caused by 'handleEditItem' not calling the collapse functionality for an opened row correctly, and has been resolved by adding a check which allows the expansion of multiple rows for readOnly details. | User Experience |
INC-210145 | 710462 | Added dirtycheck handling for case wide flow | After opening an assignment and making some changes, clicking on the configured case wide flow process in the actions menu did not generate the expected pop-up window offering save/discard, resulting in the task being closed without knowing whether the changes were saved. This has been resolved by adding a call back functionality to handle dirtycheck for this scenario. | User Experience |
INC-220363 | 720120 | Additional page sizes available for PDF generation | Support has been added for using page sizes in PDF generation which are supported by the v4 pd4ml jar including A0-A10. | User Experience |
INC-196186 | 725412 | Check added for repeating dynamic layout submit context | The postprocess of a local action was not executing when the local action was in a table that contained a repeating dynamic layout, and a null pointer exception was generated. Investigation determined that when a repeating dynamic layout was used inside a grid, the submit action on the layout was incorrectly happening in the context of the grid. To resolve this, a check has been added to determine whether the repeating dynamic layout is inside a grid so the correct context is used. | User Experience |
INC-216927 | 714497 | Conditional handling added for perceived invalid valuelist reference in design time | After adding a value list property '.pyDateTimeValue(2)' in a section configured in the view editor, the design time error "config issue" was shown. There were no errors at run time and the application's behavior was correct. Changing the subscript of the value list property to (1) ran without an error. In this scenario, the actual usecase configuration will populate .pyDateTimeValue(2), but the view editor believed there was an error in the section because there was no reference to pyDateTimeValue(1) first. This has been resolved by conditionally changing the pyValue to a template property in design time when a perceived invalid valuelist reference is provided as property in the panel. | User Experience |
INC-214222 INC-214809 |
719322 719135 |
Confirmation message correctly displays | Two issues were seen with inconsistent display of the confirmation message. In one instance, after an assignment was finished the Review harness was appearing instead of Confirm harness and no confirmation message was displayed. In the second instance, after creating a case and moving to the next stage, coming back to the previous stage did not show the confirmation message. These issues were traced to the Ajax container primary getting closed before refreshing the section pyCaseMainPageNotification, causing the harness context issue as well as the failed conditional parameter strPHarnessPurpose issue which caused the message to not display. These have been resolved. | User Experience |
INC-191756 | 718551 | Corrected dashboard focus highlighting | Dashboard links like "My activities"/"My cases"/"Recent"/"Search” were displayed with a yellow focus highlight even though the user was not currently in those screens. Investigation showed the data-menu-id for control_menu was being appended with the workid until selecting another tab caused it to reset to its original value without workid. This change in menu-id was responsible for the issue with focus, and occurred only when render as single checkbox was unchecked. This has been resolved by removing workid from menuid and adding a unique id for the outside menu and inside case same menu. |
User Experience |
INC-208848 | 720106 | Cosmos landing page configuration icon updated |
In order to allow changing the Cosmos landing page configuration icon, the harness has been made available. The default icon has also been updated. |
User Experience |
INC-215046 | 714674 | Deleting case in create stage returns user to home/Dashboard | When using a multi-step form in Create Stage, performing a Cancel + Save&Close, then re-opening the case and using a Cancel + Delete, the result of the cancelation is not shown and the user is not returned to the Home/Dashboard screen. This was caused by an issue where the specific AJAX container was not closed, and has been resolved by modifying the pyCaseActionAreaButtons to execute the pyCloseCase local action when clicked to close the case. | User Experience |
INC-218265 | 720613 | DoClose updated to resolve lock and context issues | An interaction case was closing when intent tasks were closed from CSRecents. Investigation showed this was due to the doClose activity not being triggered in the right context, and has been resolved. An additional issue with locks not being correctly released after opening the new case Create stage and clicking Cancel in the modal was traced to a missing pyWorkPage in the safeURL params that was needed by the doClose activity, and this has been resolved by adding the primary page name. | User Experience |
INC-218855 | 718835 | DSS added to control section collapse on refresh | After update from 8.5, using dynamic layouts that included certain controls (autocomplete/text/dropdown) configured with Refresh-Other Section -> Parent / Top Level Section such as a pyCaseActionArea with Event 'On Change' showed a different behavior: entering a value in the configured text/auto-complete field that leads to the refresh of the top level section will collapse all expanded sections if there is a refresh trigger within the embedded section or dynamic layout of the collapsible layouts. In order to control this behavior, a new DSS has been introduced. By default HonourExpandWhenOnRefresh (owning ruleset Pega-UIEngine) will be set to false to maintain the current behavior of collapse on refresh, while setting it to true will use the older behavior of maintaining expanded sections. | User Experience |
INC-190855 | 681093 | Duplicate items resolved for questionnaires | When there was only one question page for a questionnaire, the question page title was being displayed twice and the breadcrumb showed duplicate steps. When there was only one step in the screen flow, the survey navigation was hidden. This has been resolved. | User Experience |
INC-216923 | 722207 | Event reset added for delegated data type horizontal scroll | Clicking on the horizontal scroll bar and dragging it to the right to enter data/records in a delegated screen in the Case Manager portal was not working correctly. This has been resolved by adding special handling to clear the event queue for the horizontal scroll in a repeating dynamic layout grid. | User Experience |
INC-215725 | 716663 | Go Button accessible via keyboard | When worklist was launched using the Mozilla Firefox browser, the Go Button used to advance the case to the next stage was inaccessible via keyboard and did not have the proper focus. This has been resolved. | User Experience |
INC-222507 | 721695 | Helper text added to clarify maxlength enforcement | It is possible to enter more characters into a browser field than is specified by the maximum character limit unless read-only formatting is used. This is due to the resulting HTML input tag having the type of number, which leads to the browser default behavior of not honoring the maxlength attribute. In order to clarify this, helper text has been added with the message "Min and Max characters are ignored for type Number when 'Display value using read-only formatting' is unchecked." | User Experience |
INC-205394 | 706788 | Hidden subprocess steps highlighted in screen flow navigation | When a subflow was used as a last step within a screenflow and the subflow steps navigation links were hidden, the subprocess step was not highlighted as current. To correct this an update has been added that will highlight the circle on the navigation for a subprocess set as last step with substeps hidden, and the lines on the navigation step will be highlighted on the left side for a subprocess set as a step other than the last step and which has substeps hidden. | User Experience |
INC-206058 | 709517 | highlighted after validation failure | The property label was not changing to red after validation failed. This has been resolved. | User Experience |
INC-220989 | 719866 | Improved accessibility on create harness | Hitting the tab key was navigating out of the popup on the create harness. This has been corrected. | User Experience |
INC-224446 | 724369 | Load more works in non- templatized layout | After adding a repeating dynamic layout inside a tab group layout (which is a deprecated feature) to make it non-templatized, the progressive pagination option to show the "load more" button did not work. This was caused by the load more functionality having a dependency on pega.ui.RDL even though pega.ui.RDL was not available in case of a non-templatized grid, with the result of generating an exception which broke the flow. This has been resolved by adding a null check which will allow the flow to proceed whether the grid is used inside non-auto-generated or auto- generated elements. Please note that it is strongly recommend to update any deprecated layouts to Layout Group as it is a best practice to keep the code updated to avoid any compatibility issues. | User Experience |
INC-214338 | 712498 | Navigation updated for checkbox control in table cell | Keyboard-only navigation was not working correctly when there was a checkbox control in a table cell. This was traced to the manageFocus function in the pega_ui_templatizedGridComponent js file which was setting the tab index to -1 when the checkbox value was updated. This has been resolved by skipping the execution of this function for checkbox control to handle the case when escape is not pressed before tabbing to come out of the table when there is a checkbox control in a cell. | User Experience |
INC-188141 INC-199137 INC-198784 INC-211743 |
678160 708165 697526 711669 |
PD4ML upgraded | Issues with PDF generation have been resolved by upgrading PD4ML to version 4.0.13. | User Experience |
INC-217304 | 714590 | Regex handling updated for non- empty inputs |
Expression evaluation for non-empty regex has been updated to include testing for unicode characters to align with recent updates made to CKEditor. |
User Experience |
INC-217655 | 723564 | Resolved validation check freeze for Dynamic Layout Group | After creating a multi-step form where step 1 had a Dynamic Layout Group(tabbed) that used form fields configured with validations, clicking next with empty/invalid values in the form intermittently caused the screen to freeze and a javascript exception was logged. This was traced to a missed use case related to templates in the childNode, and has been resolved by adding the necessary safe checks in lgtemplate and lgcelltemplate. | User Experience |
INC-217680 | 717606 | Tab name displayed correctly in embedded mashup portal | "Work Item" was given as as the tab header instead of the Case ID# when a case link was clicked/opened in an application embedded in an external site (IAC). This was traced to the pega.desktop.support.doGadgetAction function not calling the regular handleGadgetLoad function in this scenario, and has been resolved by explicitly directing work items opened in a multi-doc mashup portal to use handleGadgetLoad. | User Experience |
INC-216404 | 721512 | Table alignment corrected for PDF | The align="center" styling was not getting applied whenever the Rich Text Editor was in readonly mode. To resolve this, the CSS style has been updated to correct table center alignment for readonly Rich Text Editor documents and paragraphs in the pzbase- gadgets-ckeditor and pzbase-div-layout CSS files respectively. | User Experience |
INC-211082 | 717176 | Updated default portal harness handling for switching applications | After opening the user portal in a new browser tab through interaction with the search, a blank screen was presented when attempting to switch applications via the operator menu. Performing the same actions in the main / originally opened portal worked as expected. This has been resolved by creating a new section pyPortalNavigationHeader in pzPortalNavigation which has an action to open the harness which is available first in D_pzDynamicnavigationpages. This new section has been marked as available to allow local modification of the default harness for sites not using dynamic navigation. |
User Experience |
INC-215215 INC-222922 |
713856 722993 |
Validations fire on collapsed accordion layouts | Client validation was not firing on the selected tab of a layout group if the accordion layout was collapsed. If focus was switched to the second tab, the client validation on the first collapsed tab did not work. This has been resolved by modifying the 'else if' condition to pass the validation for the fields places in layout group tabs. | User Experience |
INC-219310 | 717114 | WorkSearchGadget updated in Theme-Cosmos-02-01 | The search icon was not working in Cosmos after update, which was traced to the search icon not having an action set. This has been addressed in Theme-Cosmos-03-01, but in this scenario Theme-Cosmos-02-01 was set as the Application definition instead of Theme-Cosmos-03-01. To resolve this, Theme-Cosmos 02-01-01 has been updated to use the newest version of the @baseclass.WorkSearchGadget section. | User Experience |