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.)
Low-code Application Development
Case Management
8.6.2 Patch Resolved Issues for Case Management
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-167606 | 665869 | Updated ConfirmHarness handling for case type creation | If a new case type was created with the initialization stage and there were no assignments in the case type, the /cases API did not return a NextPageID in response. This has been resolved by setting the pyConfirmHarness parameter before calling addworkobject. | Case Management |
INC-168368 | 651079 | Correct flow actions loaded in multi-thread portal refresh | The member authentication screen was displaying an incorrect flow action on doing browser refresh after creating a new interaction. Refresh is a special case where the parameter retention is different across single-threaded & multi-threaded portals alongside the execution order of activities. In this case, this inconsistency occurred in a multi-threaded portal when newAssignPage had the information to load the proper assignment but the parameter indicated an old index. This has been resolved by adding 'when' conditions to to populate and pass the correct references and labels and to honor the Param.TaskIndex set and sent by UI activities so it's retained in case of multi-thread portals. | Case Management |
INC-171842 | 664387 | Visible element populated for field value controls | When implementing a section which had several labels with visible when conditions, this is not reflected in the DX API Get Assignment View. This has been resolved by adding a visible element. | Case Management |
INC-173068 | 654067 | HTML tags escaped in Audit History field values | The case narrative section was showing case statuses with encoded special characters such as % or ( ), resulting in entries such as "Status changed to Complete &# 40;approved& #41; !@#$ %^& amp;*&# 40;&# 41;_&# 43;.". This has been resolved by updating the PyMemo field from type Text Input to DisplayAsLiteral for case narrative, which matches the setting for case history. | Case Management |
INC-174267 | 669672 | Wait action persists when using Urgency Adjustment | When using the Urgency Adjustment (pyAdjustAssignmentsla standard local action), once a case reached the wait action and the goal and deadline were updated the previous pyWaitAction was not being stored. This has been resolved by ensuring the previous pyWaitAction will be stored and passed to the AddAssign activity. | Case Management |
INC-176952 | 660482 | DateTime format check added for REST response | While retrieving case details using the standard GetCases API, a datetime field defined on a work object was returned in JSON date format i.e. "QuoteExpiryDate": "2021-06-09T14:00:00.000Z". However when the same field was mapped to a flow action's section, the value was retrieved by the GetAssignmentAction API which returned the value in Pega's date format, "value": "20210609T140000.000 GMT". This was traced to a missed datetime format check in the REST response, and has been resolved by using the Rule-Utility-Function pzAPICreateJsonForField to handle the conversion of the time stamp to JSON format. | Case Management |
INC-179217 | 662328 | Re-save case type completes successfully | Checking in a case type rule with Stage Rule reference was failing. This was traced to the RuleCheckin activity being called in a nested fashion that caused an inner run to remove the "pyOriginalRecord" page which was needed in the outer run to set the .pyRuleset property (at Step 34), and has been resolved. | Case Management |
INC-182332 | 668691 | Updated handling for DepStatusFromQueue parameter in CaseDependency | The pyCaseDependency declare trigger was not considering the DepStatusFromQueue parameter when an agent was involved. This was a missed use case for a customized calling of the check flow dependency, and was traced to the "DepStatusFromQueue" parameter being empty. This caused the dependency to not be resolved so the parent case was waiting indefinitely even though the child case had reached the required status for resolution, and the system has been updated to handle this scenario. | Case Management |
INC-182776 | 666940 | CheckFlowDependencies updated for auto-instantiated child cases | A parent case with more than one child case was producing an unexpected behavior during the child case creation process. The first child case was instantiated at the correct point of the case stage based on its dependency condition, but the following cases were instantiated at the same point where the first child case was created irrespective of the dependency conditions defined in the other child cases. Investigation showed that the pxCheckFlowDependencies activity called from the Resolve activity was removing the named pages "pyTopCaseMap" "pyTopCaseWork" which are required for starting and validating configured auto-instantiate child cases in the pzCanStart function. To resolve this, an update has been made to CheckFlowDependencies which will use the activity "pzResolveCaseHierarchyMap" for removing the "pyTopCaseMap" and "pyTopCaseWork" pages based on DependencyType. | Case Management |
INC-183751 | 665892 | Improved text contrast for Attach Content button | In order to improve accessibility, the contrast between text and background colors has been increased for the Attach Content button by updating pzMultiDragDropControlStandard to change the color from gray to black in function pzInitHTML5DD(). | Case Management |
INC-184271 | 668412 | Portal Header persists appropriately | The Portal header was disappearing immediately after case attachments were opened from the right sidebar and did not reappear even after refresh. This was traced to the absence of pd(event), and has been resolved by adding pd(event) to the onclick attribute in the anchor tag in the attachment UIKit rules. | Case Management |
INC-184300 | 666156 | Deprecated status removed from StartCaseType | After updating from Pega v8.4 to v8.6, guardrail warnings were seen for the deprecated pxStartCaseType flow rule. This occurred for old case types created prior to v8.5. A utility has already been provided to upgrade the case type to include create stage, but this warning has been resolved by removing the deprecated status on pxStartCaseType to allow processes to proceed without a guardrail warning. | Case Management |
INC-186654 | 669114 | GetStatusChanges performance improvements | Performance issues were seen when running the GetStatusChanges report. This was traced to the filtering methods used, and has been resolved by updating the report definition and enhancing the filtering conditions. | Case Management |
Cloud Services
There were no Resolved Issues for Cloud Services in 8.6.2
Conversational Channels
8.6.2 Resolved Issues for Conversational Channels
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-175994 | 667481 | Removed redundant Microsoft Outlook email interaction chain | When opening an email interaction case, the email editor user interface area showed the complete email chain of the email for every new message that came in related to the case. This was traced to the difference in the selectors that various email clients use to construct a response to an email with email history in it, and has been resolved by updating the selectors for Microsoft Outlook in pyRichTextEmailHistorySelector so no conversation is repeated when using that client. | Conversational Channels |
INC-176881 | 669701 | Resource added to extract email threading code from message body | In some scenarios the case ID was not being sent in the subject of email replies as expected, and the secure tracking code was part of the email body instead. That caused replies back to the email thread to create a new email interaction case instead of properly threading the new message into the conversation. Investigation traced this to some email clients removing space after the tracking code. To resolve this, an update has been made which will extract the tracking code from email-content html if it is found and otherwise fallback to the email body. | Conversational Channels |
INC-178990 | 664613 | Added handling for reloading portal while ChatBot is active | An issue was seen with UI rendering when a customer tried to reload the portal where the chatbot is deployed. Investigation showed that this was caused by the screen going to pyCreate harness instead of ChatPerform harness due tot he unexpected refresh, and has been resolved by updating the handling for the Chat Work page and the business case so that pyWorkPage is always Work-Channel-Chat. | Conversational Channels |
INC-179888 | 663845 | Training data correctly added to model | Negative training data was not getting added to the entity model. This was traced to logic used to remove consecutive spaces which was incorrectly removing new lines and leading to entity detection of entities such as address line. This logic has now been removed. | Conversational Channels |
INC-184155 | 673074 | Entity Detection prefers first detected entity | Entity detection shown in the "Training data" tab of the email channel did not match with the results of running the corresponding text analyzer rule. This occurred when a single piece of text was detected as multiple entity values, which led to the last entity detected being picked for case mapping because of the unclear scenario of duplicate entities. To resolve this, pxmapresponseentities has been updated to prefer the first detected entity. | Conversational Channels |
INC-184834 | 669457 | Channel copy text analyzer detection updated | The error message "No unlocked Ruleset versions are available. Please add or unlock a ruleset to create a new channel." was displayed when trying to save a new interface. This was traced to the system copying the channel to incorrect classes/names due to detecting an incorrect type of text analyzer and copying the wrong rules. To resolve this, the method of detecting the text analyzer type on channel copy has been updated. | Conversational Channels |
INC-184902 | 669452 | Corrected portal image display for authenticated request | Email images for the user portal were not displayed in the browser but were showing correctly in the manager portal. The URL to the image was the same in both cases, however for the user portal the URL request was requiring authentication. This has been resolved by updating the API to use currentsessionURL. | Conversational Channels |
INC-185455 | 671976 | Email widget auto-refreshes for incoming email | The email thread was not updated automatically for incoming email in an email interaction case with Outlook, but did refresh when the work object was closed and opened in perform mode. This was traced to a Jump statement after pyMapEmailToEmailTriage which interfered with threading, which has now been removed. | Conversational Channels |
Data Integration
8.6.2 Resolved Issues for Data Integration
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-156674 | 674056 | Handling added for reactivating combined Passivation and AccessGroup timeout | Refreshing a passivated browser window in Dev Studio for an operator with a combined access group and passivation timeout was resulting in a blank screen after re-authenticating. InvalidParameterException and InvalidReferenceException messages were logged. Research showed this was caused by a missing pxPortal property on the pxThread page along with missing Application and Accessgroup pages. While refreshing the browser along with the top URL, there will be few requests with tab threads calling activities such as deletedocumentpg and SetProcessWindowName because there was an unload. Because these requests reached the server before re-authentication, the threads proceeded to the activation flow, causing properties such as pxPortal, Application, and Accessgroup pages to be removed from the thread page and requestor page according to the condition that the requestor was not yet authenticated. To resolve this, the logic in session.internal.authorization.context.BasicApplicationContextImmutableImpl#applyApplicationProperties has been updated to skip removing application page properties from the thread page in this combined Passivation and AccessGroup timeout scenario. | Data Integration |
INC-161645 | 634638 | Java Bean import updated to handling differences in Java 7 and Java 8 | The behavior of the java bean Introspector class is inconsistent across different versions of the JDK when detecting indexed properties built off of java.util.List objects, causing Java Bean import to generate differently in Java 7 and Java 8. This has been resolved by updating PRIndexedPropertyDescriptor to better handle this JDK difference by resolving indexed read and write methods manually using simple reflection. | Data Integration |
INC-164021 | 638638 | Java object type removed from pyStream to resolve GetFile class error | It was not possible to perform Property-Set on pyStream(java.io.InputStream) to assign it with another object of type(returned by pxGetFile Rule-Utility-Function). This was caused by a strongly typed java.io.stream in the pyStream property creating conflict at runtime with S3WrapperInputStream from the D_GetNewFile call, and has been fixed by removing the java object type from pyStream. | Data Integration |
INC-168254 | 659298 | Documentation updated for accents and special characters used in search | The "Pega search API" article has been updated to reflect that the search functionality in Pega Platform does not match accented words with unaccented. For example, searching for santé and sante will retrieve different results. In addition, Domain Specific Language (DSL) includes special characters for use when searching, for example '-', '_', '!', '@'. However, the system retrieves various results depending on the way the special characters are used in the search query. If the query contains special characters that are not escaped, the system may retrieve incorrect results. For example, not escaping the slash mark in the 25/02 query may cause the system to ignore the special character. | Data Integration |
INC-170458 | 667372 | Handling updated for queue processor locks | The Final activity mentioned in the processing epilog of the Service File rule was not being consistently called from File Listener, causing some of the cases to become stuck and not continue to the next stage. Investigation showed that if the lock was held by the queue processor requestor, the system was unable to obtain the lock but still proceeded to update the LogServiceFile page and persist it. This resulted in overwriting changes made on the LogServiceFile page by the requestor, resetting the completed-batches-count set back to 0. To resolve this, RuleServiceFile -> updateLSFBatchCounts() will call the overloaded lockAndLoad() method in LogServiceFile that accepts a parameter called lockAttempts. This will attempt to obtain a lock for a given number of times before throwing an exception. | Data Integration |
INC-170646 | 658308 | Security update for unauthorized URL requests | Updates have been made to improve security around unprivileged users and unregistered requests. | Data Integration |
INC-172849 | 665982 | SortPageList method updated for Obj-Sort | Sorting page lists backed by a node level datapage using Obj-Sort was causing a ConcurrentModificationException. This has been resolved by updating the SorterImpl.sortPageList method to use java7CollectionsSort instead of collectionsSortWithInferenceEngineDisabled. | Data Integration |
INC-174625 | 655243 | Admin Studio will consider cluster protocol when returning listener status | When using a few nodes in standalone mode for BIX extract combined with server nodes using Hazelcast, opening the admin studio pages with service discovery caused an error to be thrown. This was traced to the system writing an entry to pr_sys_statusnodes table as an embedded node whenever a BIX extract was triggered, causing those standalone nodes to be incorrectly considered by the listener landing page. This has been resolved by configuring the system to either return the local member when the cluster protocol is standalone or to return all Hazelcast members if the cluster protocol is Hazelcast. | Data Integration |
INC-175672 | 655810 | ServicePackage thread handling improvements | Work recently done to improve the release of requestor pool threads for the ServicePackage has been further enhanced by adding an explicit status notification to the thread waiting for Data Pages to be loaded in background and added support for the use case of a missing object handler. | Data Integration |
INC-176112 | 662449 | When rule inside a loop correctly picked | While using a 'when' rule inside a loop of a page list, the rule was not being picked during runtime. This has been resolved by adding an update to allow an assembly time class name to be passed into runtime. | Data Integration |
INC-176903 | 657339 | Ready to process records count correctly displayed | After update, the QP's ready to process records count was always shown as zero in the Admin studio QP landing page. This was traced to a missing sListMaxResultCount property in the SQL query for qp-partition retrieval; this has been added, and the default value has been changed from 0 to -1 for proper interpretation of results. | Data Integration |
INC-177512 | 657017 | Hazelcast packages expanded for Java9+ with kubernetes | Hazelcast warnings were seen in cluster logs when Hazelcast was run in embedded mode or c/s mode on a java modular environment i.e. java 9+ which noted that performance and functional impact issues may result if certain internal modules of java are not given reflection access. This update provides the necessary access to some additional java internal modules/packages per the Hazelcast recommendation. | Data Integration |
INC-177773 INC-179448 |
665337 664315 |
Tracer protections updated | Cross-site scripting protections have been updated for Tracer. | Data Integration |
INC-178148 INC-188405 |
660925 673065 |
Handling added for SSO servlet name | After update, logging into an external site was not working correctly due to the SSO URL being appended with "/app/default". This has been resolved by updating the code to handle the servlet name properly. | Data Integration |
INC-178923 | 660886 | Resolved startup error related to business calendar object | An error recorded in the log file when the server started was traced to a cache update that removed the old business calendar object and added the new business calendar object to the business cal list. This has been resolved by updating the system to replace the business calendar object instead of removing the old one from the cache first. | Data Integration |
INC-179025 | 665545 | Null check added for getTargetNodeUUID | A null pointer error was seen from the tracer during a security scan. This has been resolved with the addition of a null check for TracerRequest.getTargetNodeUUID. | Data Integration |
INC-179106 | 662616 | Null data page check added for DataPageTelemetryImpl | Recent work was done to modify the StreamChangeTracker trackValueChanges API to return false when invoked for properties of mode page. An additional null check has been added in DataPageTelemetryImpl.recordDataPageLoaded to handle a null pointer exception caused by null data page definitions. | Data Integration |
INC-179167 | 659591 | Atmosphere update | The Atmosphere jar has been updated to version 2.4.5. | Data Integration |
INC-180184 | 665090 | Assistance and diagnostics added for issue with opening imported 'when' | After update, attempting to open rules that were developed on lower environments and then imported resulted in unknown errors. A workaround has been added to skip and log any corrupted property that might be interfering with the rule opening: enable Skip-Corrupt-Property to put this in place. To improve diagnostics, the new logger NBA-WME-DEBUG has been added. If the error continues after using Skip-Corrupt-Property, Skip-Corrupt-Property should be disabled and NBA-WME-DEBUG should be enabled and kept active until the issue occurs again. | Data Integration |
INC-180901 | 666446 | Heap dump ability added for OpenJDK | Support for OpenJDK has been added to the heap dump generation process. | Data Integration |
INC-181921 | 666931 | Date normalization enforced for reference time | A job which was scheduled to run weekly once on Monday at 8AM CET was running a second time at 9AM CET. Investigation showed the original recurrence pattern implementation was normalizing the reference time only at construction; this has been resolved by forcing the date normalization on each reference time update. | Data Integration |
INC-182148 | 668008 | Handling added for missing schema for persistClusterState | The message "Error retrieving database indices java.lang.NullPointerException" was being logged repeatedly, indicating an issue with ClusterManagementAPI. Investigation showed there were missing default Schema values in the prconfig files, and this has been addressed by adding fallback scenarios for missing schema information during PersistClusterState. | Data Integration |
INC-182537 | 667591 | French added to Locale List Separator | Exporting data to Excel in CSV format resulted in text with French accent characters such as "Décision pour une nouvelle demande de règlement" to appear as random characters, and columns were not being split. This has been resolved by adding a record for the French locale in the pzGetLocaleListSeparator decision table rule. | Data Integration |
INC-182828 | 667098 | License Usage logging expanded | Diagnostic loggers have been added to assist in debugging license usage. | Data Integration |
INC-182959 INC-185760 |
668736 668741 |
SQL queries modified to use qualified table references | Portal launch in the development environment was taking an excessive amount of time, as were some standard reports. The PurgeAssemplyDatabaseCache agent activity also generated an error regarding "(internal.cache.RAPurge) ERROR - Purge, unexpected error in removeOldAppCentricCacheData". These issues were traced to SQL queries that contained pr_sys_app_hierarchy_flat without a schema qualifier, and have been resolved by changing to class qualified table references. | Data Integration |
INC-182984 | 665938 | Accessibility label added to delete column header of delegated data table | After delegating a data table, the header row of the delete column added to the grid was empty and JAWS was reading "HEADER". This has been resolved by adding a label for the delete column which will also be displayed in the delegated rules in the case manager portal. | Data Integration |
INC-184668 | 665957 | Check added for null mColumn values while estimating size | A null pointer error indicating an issue with AbstractDataPageHandler.estimateDataSize was traced to missing handling for null values in mColumns while calculating size. This has been resolved with the addition of a null check. | Data Integration |
INC-184699 | 666462 | Agent name validation added | After creating an agent name that contained "/", the Agent API returned "Resource not found". This was due to the "/" character's incompatibility with the REST API, and has been resolved by adding agent name validation (pzvalidateagentname) to embed-rule-futurequeue to prevent the inclusion of "/" in an Agent name. | Data Integration |
INC-185758 | 668962 | Optimized GenerateID feature for case creation | Enhancements have been added to support high-performance high-volume case ID generation on multiple databases including Oracle , MS-SQL, and Azure. | Data Integration |
INC-188065 | 671402 | Catch added for corrupted alert configuration | On creation of a queue processor rule, the alert ID was not present in the logs due to a missing alert configuration page. After this action, the server was not accessible and could not be started. This has been resolved by catching the exception if the alert configuration is malformed or missing. | Data Integration |
Decision Management
8.6.2 Resolved Issues for Decision Management
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-159836 | 631206 | Upgraded Apache UIMA Ruta libraries to resolve memory leak | A memory leak issue that resulted in a reboot being needed every few days was traced to the class org.apache.uima.ruta.rule.RuleMatch. This has been resolved by upgrading the Apache UIMA Ruta libraries to v2.8.1. | Decision Management |
INC-172785 INC-177031 |
662333 664857 |
Adaptive model retry mechanism enabled | Adaptive models were missing from the Model Management page as well as in the Prediction studio while similar models for the same proposition, only differing by the Channel name, were visible. This was traced to data not being synchronized between the database and Cassandra. The pegadata.pr_data_adm_factory database table did not contain the record of the missing channel, but Cassandra did. Since the current Cassandra adm_scoringmodel contained model information, the system still believed the model was present. In order to ensure Cassandra and the database table are in sync, an update has been made to enable the retry mechanism "SyncFactoryKeysTask" to create the ADM model in factory table by periodically looking for scoring models without factories or an entry in adm_meta. | Decision Management |
INC-173596 | 660220 | Google OAuth and Spring versions updated | The Google-oauth-client jar has been upgraded to version 1.31.1, and SpringFramework libraries have been updated to version 5.3.9 . | Decision Management |
INC-174781 | 655122 | Kerberos authentication added for external Cassandra | Support has been added for Kerberos authentication with Cassandra. | Decision Management |
INC-175207 | 664360 | Added handling for DSM Services stuck in leaving status after database outage | During a database outage, the heartbeat would fail and DSM services would eventually try to enter safe mode and stop. As the first step they would try to change the state to LEAVING, but because the database was down saving the LEAVING state failed and the exception was not handled correctly. This resulted in the rest of the stop operation logic not being executed and the service being stuck in LEAVING. To resolve this, an update has been made to ensure the service goes to LEAVING_FAILED if anything fails during the stop operation including when setting state to LEAVING_FAILED. The state LEAVING_FAILED will get flushed to the database eventually when it comes back up. This will allow the aggregation service to start from the LEAVING_FAILED state and recover by itself after a database outage. | Decision Management |
INC-176757 | 657787 | Interaction History properly saved when running strategy on a different data flow | Customized Interaction History properties that had been added to pyInteractionHistoryConfiguration and pyDefaultWorkingSet and saved into the PR_DATA_IH_FACT table were not being saved properly after upgrading from 7.3 to 8.3. This was a missed use case and has been resolved. | Decision Management |
INC-177877 | 661177 | Write lock check added to avoid thread contention | After updating the Pega platform and NBA Designer, a significant drop in performance for multilevel strategies was observed. Investigation showed that invoking a sub strategy containing external input intermittently caused a thread contention issue related to write lock. This was traced to overzealous write locking of a component where only a read lock for the thread was required, and has been resolved by adding a verification check to determine whether a write lock is necessary for a given operation before acquiring it. | Decision Management |
INC-178214 | 664889 | D_ProjectList updated to resolve defined databases error | After update, an API error for D_ProjectList indicating "No databases defined" was seen when trying to load decision and templates for the first time. The error did not reoccur after the initial save. This was has been resolved by updating the handling for loading the properties file during class loading. The error has also been changed to an exception. | Decision Management |
INC-178938 | 661496 | Exception handling added for ClipboardPropertyCollection | After upgrading from Pega v7.3 to 8.5, validating the existing strategy logic generated the error "ClipboardPropertyCollection is not a supported ILType". This was traced to the special Pega expression type PropertyCollection not being supported by IL, and has been resolved by adding logic that will throw a more appropriate exception (instead of the generic PRRuntimeException) so the event can be caught by the existing fallback logic. | Decision Management |
INC-181148 | 663164 | Documentation updated for altering data type to Timestamp to avoid duplicate data in Decision Hub | By default, the pxOutComeTime column has a Date data type in the pr_data_ih_fact table. This may cause duplicate data issues. To resolve this, the 8.5 and 8.6 installation and upgrade guides for Pega Customer Decision Hub have been updated to include a new procedure "Modifying column definitions to use the TIMESTAMP datatype in an Oracle database". Performing this procedure will allow users to avoid the duplicate data issue. All documents are available from the Pega Customer Decision Hub product page. | Decision Management |
INC-181401 | 665935 | Added handling for MS SQL datestamp format | When using an Microsoft SQL Server, the browse operation was failing with an SQL error for the pyIHSummary dataset. Investigation showed there were some datasets that generated SQL statements with a date timestamp format that SQL was not able to handle implicitly, affecting browsing but not functionality. This has been resolved. | Decision Management |
INC-182137 | 662487 | Multistage Prediction Logic improved | When Predictions with Response wait time configured were executed as part of make decision, each decision that came out of the strategy caused a pxDR call to fetch the relevant model execution results and process them to stage the default outcome results for models. This has been improved by modifying the system to process the existing records rather than reading data again from pxDR. | Decision Management |
INC-183431 | 665161 | Strategy execution queries tuned | During NBA strategy execution, interaction history summaries were queried multiple times for a single strategy execution. To improve this function, the isChanged query will now be executed once after system startup if there are no changes instead of being executed every time the Aggregates DataSet BBK is executed. If the same Aggregates query is made multiple times as part of a Strategy in a REST request (i.e. likely multiple ADM models in a MakeDecision call), only one Aggregates BBK call will be made. | Decision Management |
INC-185045 | 672418 | Performance improvements for action check-in | The process of 'Saving As' an action to a higher ruleset, Saving, and then running Check-in was taking an excessive amount of time. This was traced to redundant page copy activities and performance has been improved by updating the implementation. | Decision Management |
INC-186889 | 674015 | Unused DSS compiledExpressions now defaults to false | After updating from Pega 8.2 to Pega 8.5, executing a test campaign failed with an error in logs. This occurred when running Distribution tests with "Include funnel analysis reports" checked, and was traced to the DSS setting "decision/strategy/ssaVM/compiledExpressions". As this was previously used to toggle a feature which is no longer in use, the default setting for this DSS has now been changed to false to resolve this issue. | Decision Management |
INC-188389 | 672761 | ComponentName fallback added for toggling page context | Whenever the External Strategy configuration was changed from "Another Page" to "Current Page", pyComponentName property was not being created. This was a missed use case for toggling page context for external substrategies in the user interface of the strategy designer, and has been resolved by setting pyComponentName to its default if reset when switching context. | Decision Management |
INC-188419 | 671500 | DSS added to configure usage of Topup | During NBAD-generated strategy execution, each interaction history summary is queried twice to check data relevancy. This update adds configuration options to disable topup in aggregate datasets. Topup can be disabled with the following configuration items: - Set prconfig "ih/aggregates/last_customer_update_method" to NONE - Set DSS "cep/aggregates_dataset/partition_proc_cache_time" to -1 |
Decision Management |
Low-Code Application Development
8.6.2 Resolved Issues for Low-Code Application Development
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-176542 | 668477 | Removed unused function to improve Class rule save performance | Clicking save on the Policy Class rule was not working correctly or was taking an excessive amount of time to respond. Adding property mapping in the External Mapping tab of the Class rule exhibited the same behavior. Investigation showed there was an infinite loop being invoked in the class ruleform, which was traced to the disableKeyEntries() function. As this function is no longer used, this has been resolved by updating the RF_RuleObjClassScript.js to remove disableKeyEntries and any function calls to it. | Low-code app development |
INC-179111 | 666017 | Toolbar delete handling modified | After upgrade from Pega 7.4 to 8.5, the toolbar delete button behavior was different. Previously, the pzRuleFormToolbarDeleteRule section rule invoked RuleFormMain on refresh, but the updated version was calling RuleFormHeader, preventing the deletion of the assignment from the class instance. This was an unanticipated edge case and has been resolved by updating the action in the button to refresh the section RuleformMain instead of header. | Low-code app development |
INC-180468 | 659923 | JAWS correctly reads work group header | While creating the groups within the organizational unit, JAWS was reading the name of the frame as "Process Work Area" instead of "Create Work Group" and "enter data" instead of the name of the edit field with edit instructions. This has been resolved by adding a property to the short description label so it contains the instance type that is being created. | Low-code app development |
INC-181091 | 662776 | Strategy rules open from proposition filter after update | After update, strategy rules could not be opened from the proposition filter. This was caused by the pxInsName property being populated only when a strategy rule gets selected/configured from the CB gadget. For upgrade scenarios where the condition is already configured with a strategy rule, the pxInsName property will be missing. To handle this upgrade use case, the "Rule-open-by-keys" action will be used instead of "Rule-open-by-name", as rule keys are always present while pxInsName gets populated for only new configurations. | Low-code app development |
INC-182150 | 669852 | DSS added to control Pega Version Banner | Nuisance errors were being logged related to the application trying to connect to Pega to confirm available versions. This has been resolved by adding the 'when' rule pyShowVersionBanner to pzStudioHomeWrapper which allows disabling/enabling the Version Banner based on the setting used in the DSS ShowVersionBanner. pyShowVersionBanner defaults to true when DSS ShowVersionBanner does not exist. | Low-code app development |
INC-182248 | 665780 | Added logic to handle manual validate rule creation | Manually creating a Validate rule with conditions and then opening the configure view with conditions caused the validation rule to be removed from the flow action rule along with the validation conditions in the validation rule referred in flowAction rule. This has been resolved by updating the logic in the Condition Builder to handle this use case. | Low-code app development |
INC-187103 | 671736 | Guided Tour working from Actions menu | After updating from Pega 8.4 to Pega 8.5, "Manage a Guided Tour" was no longer working under a local action when called from the Actions menu on a work object. An unspecified error message appeared in the tracer. Investigation showed there was a null pointer error caused by the menu being invoked on an invalid page, and this was traced to updated authentication requirements: registration at the portal is not reliable as it is thread-scoped and run only once. The thread name is not guaranteed to stay the same so subsequent invocations of the tour activities failed. This has been resolved by modifying the call registration function to handle the security issues related to the generation of the menu path. | Low-code app development |
Mobile
8.6.2 Resolved Issues for Mobile
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-168290 INC-171951 INC-181126 |
663427 667123 663306 |
Signature Accept callback fires correctly in offline app | Clicking on the Accept button in the Pega mobile signature control was not properly calling the necessary pega.ui.signature.acceptSignatureCallback method. This has been resolved by adding code for the Post Success and Failure callback on Signature accept in the offline app. | Mobile |
INC-172315 | 664628 | Resolved intermittent attachment save error | A Flow Action error was intermittently being displayed when saving attachments. This was traced to the activity pzUploadAttachmentToDocument-->Step 25 which uses the step page CallExtensionAct which can cause a page null exception if it is not initialized, and has been resolved by adding a Page-New step to initialize the page. | Mobile |
INC-179175 | 664046 | Mobile barcode scan sets value with correct context | After implementing a list of items where each has a unique barcode, scanning the barcodes using the mobile app worked correctly the first time but subsequent scans were setting the value on the first element of the list and missing the context of the current scan position. This has been resolved with an update to ensure the scan barcode action sets the value on the correct property when using repeating dynamic layers. | Mobile |
INC-183559 | 664813 | Handling added to process Actions chunks on multiple nodes | If the synching of chunks to a node was interrupted, attempting to resume the remaining chunks resulted in a processing issue if the Load Balancer passed the connection to a different node than was used for the first connection. As an example, if chunks were synched to node "A" and the restarted sync saved the remaining chunks to node "B", when all chunks were synced node "B" incorrectly determined node "A" was actually doing the work and skipped the processing of the chunks on node "B". This resulted in queued chunks being left untouched. To resolve this, the logic has been updated to allow multiple nodes to process the chunks. | Mobile |
INC-183822 | 667501 | Filename with non-ASCII characters normalized for Apple Safari upload | When using the Apple Safari browser, attaching a file name that contained Japanese characters resulted in an "attachment doesn't exist" error message when trying to open it again. This was caused by the special characters in the FileName for the Data/Query string not being encoded during the file upload, and has been resolved by updating the UploadFileToADocument activity to normalize the FileName if the Safari Browser is being used. | Mobile |
INC-183864 | 666186 | Updated RequestorInitialize to improve performance | After updating, initial user logins were taking an excessive amount of time. This was traced to the standard rule "RequestorInitialize", and has been resolved by updating the implementation. | Mobile |
INC-184729 | 669740 | Pinning document to space correctly generates thumbnail | When pinning a document to a space using the standard document repository tile, the resulting pin did not have an image corresponding to it. The process worked properly when pinning a document directly from the space itself. This was a missed use case and has been resolved by adding an update to set the pyImage of the document while pinning the space. | Mobile |
INC-185950 | 669194 | Withdraw task notification uses correct email sender | When withdrawing a Task, the withdraw email was sent from the default email box instead of the expected Application default email box. This was traced to the 'pyTaskDeleted' (notification name for withdraw task) value not being present, which meant the system fell back to the task 'pyTaskAssigned' notification name. To resolve this, an update has been made to have pyIsPulseNotificationDefinition return true for a pyTaskDeleted notification. | Mobile |
INC-186489 | 668372 | Offline mobile app create work with parameters correctly saves work object | The CreateNewWork processor was not saving the work object after merging client and server page. This has been resolved. | Mobile |
Project Delivery
There were no Resolved Issues for Project Delivery in 8.6.2
Reporting
8.6.2 Resolved Issues for Reporting
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-173452 | 666440 | Quorum capability check added for external Elastic Search | The error "java.lang.UnsupportedOperationException: Not supported for client/server mode at search.indexmanager.internal.ESIndexAdminHTTP.isQuorumAvailable" was appearing when attempting to use external Elastic Search to index a dedicated index, and the queue processor was running but showed multiple broken items. This has been resolved by adding a capability check with ES_INITIALIZE_EMBEDDED_CLUSTER to prevent a quorum check with external elastic search. | Reporting |
INC-174686 | 670540 | Handling updated for INativeSQLBuilder with ABAC enabled | When trying to import into a data type, the error "Exception occurred during data import pxW-886: java.lang.IllegalArgumentException: INativeSQLBuilder not initialized properly" was generated. Investigation showed that when Add or Update was chosen with ABAC enabled during import, a null pointer exception occurred while getting the class definition. This has been handled by adding an extra null condition check. | Reporting |
INC-175797 | 662046 | Date/time filter works in source column | The date/time filter was not working in the Source column for a report definition. This was traced to "pxCreateDateTime" resolving and storing the pyDataType in the report as "DATE TIME". While "DATE TIME" is an acceptable data type it was not supported by pzGridSortPaginate and thus the filter did not work. This was a missed use case, and has been resolved by updating pzGridSortPaginate to check the dataType as both "datetime" and "date time". | Reporting |
INC-176158 | 664347 | Max number of rows setting properly honored | The setting for the maximum number of rows to retrieve was still used in a report definition even when it was disabled. This was traced to the report definition being sourced from a data page and having pagination enabled, and has been resolved by updating the handling for this use case. | Reporting |
INC-178663 | 659806 | Updated handling for batch indexing cancellation | Entries were seen in the pyBatchindex QP even when indexing was not in progress. Investigation showed that if an exception occurred during the cancel process, the pyStatusWork property in Log-Cluster-FTSIndex instance was not correctly updated and the value remained as CancelInProgress. As a result, SLP silently remained in the state of waiting for the completion of cancel operation. This has been resolved by updating the handling of the cancellation process to ensure the queue is correctly cleared and email notifications are sent as expected. | Reporting |
INC-179362 | 660589 | Display limitation removed for scheduled reports | When looking at Configure >> Reports >> Scheduled Reports only 50 reports were shown across two pages instead of all of the reports retrieved by pzGetScheduledTask. This was a limitation set in pyScheduledTasksGadget, and has been removed. | Reporting |
INC-181394 | 662097 | Handling added to avoid incorrect manifest count | Extracted Record counts in the manifest file were incorrect if any updates were made during the extraction process. This has been resolved by modifying the code to prevent the issue. | Reporting |
INC-182375 | 664343 | Report filter description correctly displayed | When a function alias was used in the filter of a report definition without the caption and with some value assigned, the FilterName was not getting displayed when the report was run. This has been resolved by updating RRFilters_Logic. | Reporting |
INC-183553 | 666395 | Report Scheduler Email Notification column consistently populated | The Email Notification column in the Report Scheduler was not being populated. Analysis showed that some standard rules were being skipped for some list view reports; this has been resolved by including the pzReportBrowserScripts js file under the scripts of the pyReportBrowser harness so that it will reload the pzReportBrowserInner while unloading the model popup. | Reporting |
INC-185565 | 667508 | Helper text added to improve close icon accessibility | After opening a report, the "X" close icon was not read by JAWS and was not functional when JAWS was running. Investigation showed that the ReportEditorHeader section did not have Helper Text for the Close icon; this has been added to improve accessibility. | Reporting |
Security
8.6.2 Resolved Issues for Security
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-163914 | 668845 | Improved Agile Studio passivation recovery | When an Agile Studio session was passivated, the error "SECU0008 : CSRF Detected and Blocked" was seen. Reactivating the session resulted in a blank page. This was traced to the clearing of requestor level registrations added for that particular thread, and has been resolved by adding a new flag to identify if a thread is passivated along with the necessary structure for the conditionalized clearing of requestor level registrations based on this flag. | Security |
INC-179360 | 662177 | Check added for allowed editing with CSRF | After enabling CSRF, it was not possible to edit a data table used to define ACL rules due to security preventing the adding/editing of rows and user group entitlements. This has been resolved by using browser FingerPrint validation to check whether an activity is in a secured list and skipping validation for allowed activities. | Security |
INC-180275 | 666455 | Collaboration control hidden if data type is delegated | When collaborating using a customized CaseManager portal with some delegated data types, the admin user refreshing the Data Type view changed the collaborator's view from the portal to show the Data Type tabs, allowing the second person to open rules (properties, Data Pages, etc) and see the configuration even though they could not make any changes. This has been resolved by updating pzDataTypeDelegated to display the collaboration control only if pzDelegation is false. | Security |
INC-180594 | 670955 | Filtering added for DisableDormantOperators | When running the Disable Dormant Operators agent, many operators were seen which were dormant but not disabled. Investigation showed the activity was fetching all of the operators without filtering the deactivation state. This has been resolved by adding a filter condition in pzDisableDormantOperators to fetch only deactivate state users. | Security |
INC-184804 INC-186512 |
669638 669327 |
Password security enhanced | Security and authentication have been enhanced for password handling. | Security |
INC-185362 | 668825 | Keystore update properly revises the cache | A keystore updated with the latest certificate was not getting reflected in the runtime and the old certificate was getting picked. In a multi-node environment when the new JKS is uploaded in one node, the changes are expected to be communicated to other nodes so that the cache can be cleaned up. In this case, investigation showed that the keystore label was in uppercase and the cache entry was not correctly removed. This has been resolved by adding an update that will convert the cache key to lowercase and maintain uniformity to ensure proper cleanup. | Security |
System Administration
8.6.2 Resolved Issues for System Administration
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-182986 | 668828 | Property Rule Form refreshes after discarding changes | After updating from Pega 8.2 to Pega 8.6 and migrating the properties, modifying any property rule and then discarding the change did not refresh the Property Rule Form. Investigation showed that the LOG-SYSTEM-PROPERTYOPTIMIZATION instance created during property optimization was not getting deleted when a property was deleted. As this was not getting deleted, the property was shown as optimized when adding the property back, causing confusion. This has been resolved by cleaning up the LOG-SYSTEM-PROPERTYOPTIMIZATION instance when the property is deleted and there is an optimization entry. | System Administration |
User Experience
8.6.2 Resolved Issues for User Experience
Ticket # | Issue # | Title | Description | Product Area |
---|---|---|---|---|
INC-165992 INC-173760 |
657693 658070 |
Table Filter save uses correct harness | After creating a new view for table and then relaunching the portal or switching between tabs, the created views were not visible. Investigation showed that the views were saved under the incorrect pycaseworker harness on initial load, causing them to not be visible when returning from the switch and using the correct pyCWPortalContent harness. This has been resolved with the addition of the new parameter innerHarnessName to get the harness name when creating a personalization instance. | User Interface |
INC-166858 | 664620 | Improved text accessibility for screen zoom | Under the specific conditions of a very large zoom level and low screen resolution, the inner menu's height was reduced to 0. This has been resolved by setting a minimal height for the inner menu item element to prevent it shrinking to 0. | User Interface |
INC-170918 | 653217 | DateTime property handling revised for future date with daylight savings time | A DateTime property was changing each time the local action refreshed. Investigation showed this was a missed use case related to recent work to correct an issue with a 1 day discrepancy for non-template DateTime. The previous update to use the default time zone when generating markup in non-template for the date property while the datetime property uses the server time zone has been further refined to handle formatting the date time when the year is greater than 2037 and combined with daylight savings time. This will be resolved by setting the correct date before returning the moment object if the year is greater than 2037 for the date time control using display mode as date. | User Interface |
INC-171663 | 655246 | MashUp dynamic parameters article updated | The documentation for MashUp best practices has been updated to clarify that dynamic parameters sent from the client side using "pega.web.api.setAuthenticationParameters" API will be sent as part of the query parameters and won't be part of the encrypted hash as this hash is generated on the server end while generating the mashup code in the mashup channel. | User Interface |
INC-173944 | 660181 | Cancel button on embedded GridRow cancels single action | When a modal Flow Action contained a Table with the Row operations configured as Master-detail and the Detail flow action was specified, if a validation error defined in a Validation rule (i.e. other than required field error) occurred while entering details for one of the rows and the Cancel button for that row was clicked, the entire action was cancelled and the modal window was closed without saving anything. This has been resolved by updating the system to prevent the modal closure if a row is added and then cancelled. | User Interface |
INC-175394 | 661456 | Date Time format corrected for Chinese locale | The DateTime input field displayed the error message "not a valid date/time value" for the Chinese locale when the time zone source configuration was set as "CET". This has been resolved by setting the moment object's locale to the operator locale while converting the date time values to the operator time zone. | User Interface |
INC-176429 | 654754 | Values updated in Local action correctly reflected in the UI | After update, values were not updated in the UI after being modified in a local action which targeted a modal dialog and had some text fields on overlay with validation messages placed using Property-Set-Messages. Analysis revealed that the ReloadSection was not getting called correctly in this scenario, and has been resolved by changing the nullify method to pega.u.d.cleanUpHarnessElements(null, [containerBody]); . | User Interface |
INC-177104 | 666333 | Resolved-by field reflects queue processor close | When a case was resolved by the queue processor, for example when the SLA ended and a case was automatically Resolved-Withdrawn by the system, the "Resolved by" field was blank. This was caused by the pyOperatorInfo control looking for the system account user data in the application users pool, and has been resolved by updating the control to display the localizable "System" name in this scenario. | User Interface |
INC-178116 | 660566 | Article on configuring display options for a harness updated | The documentation around the load behavior of a harness has been updated to reflect that the initialization settings only apply when using the harness as a landing page from the channel config. Applications that use Cosmos React do not use harnesses for landing pages. You can modify Cosmos React landing pages only in App Studio. | User Interface |
INC-179478 | 662926 | Handling updated for progressive load on scroll in repeating dynamic layers | When using progressive load on scroll on a repeating dynamic layout with a bar graph control, the bar which was loaded earlier was being removed during scrolling and only the current page's bar graph was displayed. This was traced to the page load and refresh handling in repeating dynamic layers, and has been resolved by modifying the logic to use a partial-refresh when appropriate. | User Interface |
INC-179664 | 661110 | Child Case comments pop-up opens as expected | Comments on the header level were opening correctly, but the comments pop-up for the child case tab was not. This has been resolved by adding a safe check for the eventTarget.closest method. | User Interface |
INC-179683 | 664451 | Handling added for decoding file names containing umlauts | Two issues were seen with file names that contained an umlaut: When sending file with an umlaut in the name via PegaCHAT, the error "Failed to load resource: the server responded with a status of 404 (404)" appeared on the Client side and a preview was generated. On the Agent side, the message was sent but attempting to open it resulted in an error that the file did not exist. This was traced to the unescape javascript API returning the wrong decoded values if the encoded value of an umlaut character was sent, and has been resolved by adding a safe check to avoid a malformed URI. Second, an image was not displayed in the Rich Text Editor if the image name contained the ä or Ä character in it. Investigation showed the activity parameters were being changed when it was invoked from the script. If the file name sent was "aysnÄ1626292145235.png" it was encoded to "aysn%C3%841626292145235.png" as expected, but when the parameter was passed to the Activity the value further changed to "aysn%C3%83%C2%841626292145235.png", causing the file open failure because the names did not match. To resolve this, code has been added which will correctly decode the encoded values of umlaut characters. |
User Interface |
INC-180322 | 670117 | Cosmos collapsible summary panel works with hidden tabs | The collapsible summary panel in Cosmos was not working correctly in combination with hidden tabs. This was due to the active tab index being created from the "data-lg-child-id" value which has a constant value for each tab and did not account for some tabs being hidden. To resolve this, the process for finding the "active" tab index is now based on the actual index instead of on the "data-lg-child-id" attribute. | User Interface |
INC-180482 | 661514 | Browser compatibility update for setActivityAction | After update, the Parameter Configuration popup was blank when using Microsoft Internet Explorer. This was traced to security updates that utilized the SafeURL.prototype.setActivityAction containing the startsWith API which is not supported by Internet Explorer. To resolve this, startsWith has been replaced with indexOf for cross-browser compatibility. | User Interface |
INC-180712 | 664783 | Improved accessibility for utility pane | JAWS was not reading the items on the utility pane, and performing any action using the keyboard controls with JAWS running in the background did not open the actionable item. To resolve this, the Utilities panel has been configured with tablist role instead of combobox, and Header buttons titles have been changed to be more descriptive. | User Interface |
INC-181089 | 667654 | Corrected modal focus on assignment open | After opening an assignment and using keyboard navigation, the focus was not set on the first focusable element as expected. Hitting "TAB" set focus to the second focusable element. This was traced to previous work done on focusing elements under the modal, and this has been resolved by removing the "document.activeElement.blur()" as it is no longer needed. | User Interface |
INC-181158 | 663160 | Currency control method signature updated | Saving a section with a hierarchal table that used a Currency Control resulted in the message "ERROR String locale = controlRuntimeUtilities.getCurrency(".Currency", tools);" This was traced to the handling of decimal and text type fields in the Currency Control, and has been resolved by updating the method signature. | User Interface |
INC-181389 | 668677 | Unused class reference removed from CaseActionArea | The rule Work-.pyCaseActionArea in Theme-Cosmos was logging error messages related to "clipboard.InvalidParameterException: Class not defined in dictionary: PegaMKT-Work" when opened in Dev Studio. This was traced to a reference to the section "pyCaseActionArea" which was not present by default in PegaMKT-Work, and has been resolved by recreating the section "pyCaseActionArea" to remove the unused class reference. | User Interface |
INC-181453 | 669284 | Text errors corrected for Pega Knowledge portal editing tools | The Pega Knowledge portal had two errors in the content creation menu: the word "Title" was not translated in the "add a link" pop-up, and there was a typo in the word "paragraph" in the text editor item format drop down menu. These have been corrected. | User Interface |
INC-181534 | 663519 | Information added for ckeditor plugin availability | Documentation for adding external plugins to the rich text editor has been updated with additional information regarding available plugins for ckeditor. | User Interface |
INC-182868 | 663830 | Removed duplicate "Create" text label | Expanding the Cosmos left navigation "Create" option showed duplicate "Create" text. This was caused by an unnecessary padding-right property in the left navigation label, and has been resolved. | User Interface |
INC-184311 INC-184443 |
667269 668436 |
Time value handling updated for IW locale | The error -"0undefined/0undefinedundefinedundefinedundefinedundefined is not valid time of day value" appeared when using the 'IW' operator locale and the time field was changed. This was traced to a missed condition check for the IW locale while preparing the selected time value from the dateTimeFormatString, and has been resolved. | User Interface |
INC-184419 | 669618 | Checks added to prevent EditingMode null value | When trying to open a section rule in developer portal in Pega Cloud, "Error" was displayed instead of the section details. Investigation showed the pyEditingMode property was present but did not have a value, and this has been resolved by adding checks to the UpgradeSequoiaGrid activity to ensure the pyEditingMode of "" does not invoke a data transform of that name. | User Interface |
INC-185122 | 670400 | Able to create View in Cosmos React | After creating a Cosmos react application and adding casetype, it was not possible to configure the view from the step in App Studio or Dev Studio or to create a section from Dev Studio. This was traced to the componentslist not finding some necessary components, and has been corrected. | User Interface |
INC-185847 | 669525 | Handling added for disabling weekends when no weekends are available | A browser exception was generated while selecting the option “Disable weekends”. This was traced to a malformed array of weekends in a scenario where the Data-Admin-Calendar instance had all business days checked (i.e., no weekends). To resolve this, DatePickerAssembly and pzGenerateDatePicker have been updated to handle the case when there are no weekends available in the Data-Admin-Calendar instance. | User Interface |
INC-186466 | 670291 | Style selector workaround added for Internet Explorer 11 | When using UI-Kit 15.0.1 with Microsoft Internet Explorer 11, the responsive behavior of the left navigator was not working as expected, it was not possible to Customize/Style the File Path control completely, and the AutoComplete control and Date Time Controls had a blue border on hover/focus. This was traced to the styles not being correctly selected because they contained the selector "focus-within" which is not supported in this browser. This has been resolved by adding focus-within separately so Internet Explorer will ignore the selector. | User Interface |
INC-187378 | 670549 | Scrolling fixed for moving rows in tables | After update from Pega 8.4 to Pega 8.6, attempting to move a row on the top to bottom was not working correctly due to the scroll being limited. Moving an item higher worked as expected. Investigation showed if the container format of the grid was None a condition was setting the scroll to top even if it was being scrolled down, and this has been resolved by getting the gridOffsetTop value from the closest table tag and increasing the setInterval time to achieve smooth scroll behavior. | User Interface |