SR-D43331 · Issue 510158
Run Ruleset Cleanup defaults to true
Resolved in Pega Version 8.4
After upgrade, the rule categories and rules were not showing correctly in the App view of the Dev Portal. Many warning messages were also logged related to the Decisioning DM Sample application. This was traced to the rules cleanup script not running properly. While there was a workaround of applying the ruleset cleanup scripts manually after removing the queries that reference the pr_engineclasses table, the cleanup will now be set to run by default (run.ruleset.cleanup=true). In addition, the logic to determine which RuleSets to include has been simplified and most of the pr4_rule_vw deletions have been combined.
SR-D44307 · Issue 509001
Refined dependency checking for Hotfix Manager
Resolved in Pega Version 8.4
The logic in Hotfix Manager was changed in 8.3 to include all Strategic Application hotfixes in the Catalog for platform versions 7.4+. However, because there are some edge cases where multiple hotfixes for different strategic application products have been shipped with the same rule changes, it was found that a DL packaged for one application could pick up hotfixes intended for another app. This prevented the DL from installing on systems where both apps were not installed. To avoid picking up these additional hotfixes, while the catalog shipped in the DL will continue to contain all apps, the system has been updated to use only a list of selected products when generating a catalog for calculating dependencies.
SR-D45014 · Issue 510895
Handling added for null pyrulesetversion during upgrade
Resolved in Pega Version 8.4
Attempting to upgrade from v.6 to v.8 failed during the import of RAP files. Investigation showed that there were 4 rows in the pr4_rule_file table which had a pyrulesetversion column of null. The corresponding pzrulesetversionmajor, pzrulesetversionminor, and pzrulesetversionpatch were set to -1 by the oracle_rulesetversion_columns_rules.sql script, but the upgrade was looking at the pyrulesetversion column. After the delete of these rows, the upgrade completed without issue. To resolve this, the system has been updated so that if it comes across an instance and can't determine its Major Version, the instance will be skipped.
SR-D45641 · Issue 518062
Report Definitions available as Product Rule class filter
Resolved in Pega Version 8.4
An enhancement has been added to support Report Definitions as filters for Product Rule Class instances. The system will continue to support List Views as filters for backwards compatibility, but List Views are deprecated and changing to Report Definitions is encouraged.
SR-D46681 · Issue 514434
SnapStart supports SAML2 Authentication
Resolved in Pega Version 8.4
When using an HTTP Post to SnapStart into Pega using PRCustom style or PRAuth style SAML authentication, the login was looping back to the login request. Investigation showed that the Pega ACS was posting data properly back to the RelayState URL, however the login activity was not getting the SAMLResponse and simply sent a SAML Login Request again. This has been fixed by updating reqContextURI in case of SAML2 Authentication service so pyActivity=value will be passed.
SR-D47611 · Issue 513114
HTTPS login path issue resolved
Resolved in Pega Version 8.4
When using iOS, entering wrong credentials for a login with an https endpoint converted the URL to http. This was traced to a case where the resourcePath was coming as http in SSL enabled system, but the reqURI was still https. To correct this, the system has been updated so that if the reqContextURI starts with https and the requestURL starts with http, then the requestURL will be converted to https.
SR-D48433 · Issue 529857
Exception handling added for Redirect URL fetched from GRS
Resolved in Pega Version 8.4
When the application definition under “integration and security" tab was configured to use "Store in web storage provider" to allow choosing the storage name and the authentication profile, configuring the authentication profile to use an OpenID connect provider with the pyEndpointURL property given as a global resource setting such as (=D_SharepointDetails.url) was not working as expected. Clicking browse in the application definition sent the request to the OpenID connect provider and was returned with the error "The reference =D_SharepointDetails.url is not valid. Reason: Page name (D_SharepointDetails) from indirect reference was not found." This was traced to the Redirect URL (fetched from GRS) throwing an unhandled exception, and has been resolved.
SR-D48762 · Issue 518299
Enhancement added to support DB2 CREATE OR REPLACE view syntax
Resolved in Pega Version 8.4
After creating the product, attempting to import it on another environment failed due to incompatibilities with the syntax. In SQLGeneratorDb2.getViewSourceStatement(), when the View definition is fetched there is a check whether the view starts with "CREATE VIEW". Since the customer view of "CREATE OR REPLACE" was not supported in Db2LUW, it didn't match and appended the "CREATE VIEW" statement again. This happened only when using DB2, and has been resolved by updating the logic in SQLGeneratorDb2.getViewSourceStatement() to support CREATE OR REPLACE VIEW statements.
SR-D50057 · Issue 521980
Added null check when updating OperatorID activity after passivation
Resolved in Pega Version 8.4
An issue with operators being able to see work outside of their own authorization was traced to an underlying issue with how the sessions were passivated after either inactivity for a long time or closing the browser directly without logging off. Investigation showed the conditions resulted in a null pointer for the operatorpage in the basic flow, and this has been resolved by adding a null check prior to copying the primary page data to the operator ID page as part of updating the operatorID activity.
SR-D50539 · Issue 521150
Database locking improved for login performance
Resolved in Pega Version 8.4
A slowness issue seen when trying to login to my.pega.com was traced to numerous database locks occurring on the pr_data_saml_authreqcontext table during the SAML flow. Analysis showed that while running Obj-Save on AuthRequestContext with 'OnlyIfNew' as false, the check caused a select query to run on the table to determine if the context was already there and insert it if it was not. To resolve this, the onlyIfNew check will default to true to avoid running the query; if the context is already present it will be overridden. Duplicate key exception handling has also been added to avoid any issues if a resave is done with same key.