Clarity Patch Readme

Patches are intended to be timely fixes and are not fully regression or integration tested, and are only tested against the issues listed below. We feel confident that this patch will resolve the defects targeted in this patch, but a patch could have adverse side effects to the function of your Clarity application. Do not apply patches directly to production systems without first verifying in a test environment. If any issues arise in the installation or use of this patch, contact Support.
Clarity PPM is now rebranded as Clarity. You can see the new Clarity logo on the login screen and in the New User Experience. The documentation is updated to reflect the new brand. Throughout this document, Clarity refers to the New User Experience, and Classic PPM refers to the Classic PPM Studio or Classic UI.
Ensure that you install this patch only on systems that are on
15.9 version.
This readme contains the following sections:
Issues Fixed in
Here’s a quick list of issues fixed in this patch:
The "Favorites" feature is currently not available out-of-the-box for on-premise and SaaS
customers. After upgrading to
15.9, some of our SaaS customers reported issues related to this feature. With this in mind, the Favorites feature has been disabled for
SaaS customers. While the feature is available in
15.9, it has been hidden in
Clarity for on-premise customers. Please contact the Broadcom Support team if you want to enable this feature in your environment.
DE58534 - Suboject Expand: Manage or save views do not function on Firefox and Safari browser.
Steps to Reproduce:
  1. Log in to Clarity using the supported version of Firefox or Safari browser.
  2. In the Projects grid, navigate to a subobject on the flyout.
  3. On the Projects grid, click BYOD management row, and click Details to open the flyout.
  4. On the flyout, select Status Report.
  5. Click Expand to open the complete grid view.
  6. On the views dropdown, click the down arrow to save view or manage view.
Expected Results
: Manage or save views on Subobject Expand works on all browsers.
Actual Results
: Manage or save views on Subobject Expand does not function on Firefox and Safari browser.
DE58611 - Auto-Start Processes of Cost Plan SubObjects do not Run Automatically after the “Submit Plan of Record for Approval” Event
Steps to Reproduce:
  1. Create a subobject of Cost Plan and then create a process for the subobject that will auto-start on Create event.
  2. Create or open an existing project in Classic PPM.
  3. Click on the 'Financial Plans' tab.
  4. From the ‘Financial Plans’ tab drop-down menu, select ‘Cost Plans’.
  5. Create a new plan with the Cost Plan subobject and save it.
  6. Select the plan that you just created, click the gear icon and select ‘Submit Plan of Record for Approval’.
  7. Specify the mandatory information and submit.
  8. Click Budget Plans from the ‘Financial Plans’ tab drop-down and open the cost plan that you just submitted.
  9. Click the ‘Properties’ menu and select the corresponding subobject of the original cost plan and go to the ‘Processes’ tab.
Expected Results
: The auto-start process is triggered automatically and the status is displayed.
Actual Results
: No event is created on a cost plan copy and/or submit for approval, so a  custom Process can be Auto attached.
DE58477 - Populate from Task Assignments Takes a Long Time When Large Number of Tasks are Involved
Steps to Reproduce:
  1. Open Classic PPM and navigate to a project that has a large number of tasks.
  2. Click on the ‘Financial Plans’ tab.
  3. Click on the plan that is selected as the Plan of Record.
  4. Navigate to the Details tab and click on Action, Populate from Task Assignments.
Expected Results:
The operation finishes.
Actual Results:
The operation either takes too long to complete or never finishes.
DE58053 - Time Slicing Job Fails due to Deadlocks
Steps to Reproduce:
  1. Schedule the Time Slicing job to run every minute.
  2. Schedule other jobs, such as Run a Process that runs custom scripts, to run every minute.
  3. Alternatively, perform a bulk copy/paste into TSV Per-Period columns which triggers instant time slicing.
Expected Results:
Time Slicing job runs regularly without deadlock errors.
Actual Results:
Time Slicing job runs regularly but with deadlock errors.
DE58622 - Unable to Abort Running Instances of a Workflow Using a Process
Steps to Reproduce:
  1. Create a process that will abort all running instances of a specific workflow with a GEL script that includes the code to abort instances
  2. Run this process.
Expected Results:
All the running instances of the given workflow are aborted. 
Actual Results:
The process instances are erroring out and the action items are stuck in the 'Aborting' state.
DE58178 - Task Notes Exponentially Multiply Preventing OWB/MSP from Opening the Project in GCP/Postgres
Steps to Reproduce:
  1. Create a project in a GCP/Postgres environment.
  2. Create a task in the project.
  3. Export the project to OWB (or MSP).
  4. In OWB (or MSP), add a note on the task.
  5. Save the project back to Clarity. Verify that there is only one note on the task in Clarity.
  6. Export the project to OWB (or MSP). Verify that there is only one note on the task in OWB/MSP.
  7. Save the project back to Clarity
  8. In Clarity, check the number of notes on the task
Expected Results:
The task has only one note.
Actual Results:
There are 2 notes on the task. The notes will exponentially multiply every time the project is opened in OWB/MSP and saved back to Clarity from here on. A single note becomes 2, then 4, 8, 16, 32 and so on with each operation. At some point, when the notes increase to a very large number, it prevents OWB/MSP from opening the project.  In OWB, the loading screen will stay stuck on a step similar to 'Project P1234 Notes 43,991 received' and will not move past this.
DE55446 - Manually Sorted Values in Static Dependent Lookups Fall Back to Alphabetical Order in Clarity
Steps to Reproduce:
  1. Log in to Classic PPM and navigate to Administration, Data Administration, Lookups.
  2. Create a new Static Dependent List and set the Sort Order to Manual.
  3. In the Values tab, add a, b, c, d as four different values.
  4. Click Reorder to reorder the values as a,c,b, d and save the changes.
  5. Now go to Administration, Studio, Objects and open the Project object.
  6. Add a new attribute based on this lookup and enter the API Attribute ID as well.
  7. Go to the Views tab and add the attribute to the Edit Layout.
  8. Now, navigate to Home, Projects.
  9. Open any project and click browse in the lookup field.
  10. Note that the order of values is as set in the lookup definition.
  11. Now go to Clarity (aka New UX).
  12. Navigate to Administration, Blueprints
  13. Edit the Project blueprint and add the new attribute to the view in the Properties page.
  14. Now create a new project or use a project that uses this Blueprint.
  15. Open the Properties page and click the drop-down for the lookup attribute
Expected Results:
The values are displayed in the manually sorted order as set up in the lookup definition.
Actual Results:
The values are displayed in alphabetical order.
DE58794 - Introduction of 'Starred' Feature Causes Performance Issues in Studio When Setting the Display Condition and When Creating Tasks
The introduction of the new 'Starred' feature causes the following issues on upgraded systems:
  • The Task creation page loads fine but saving a new task takes a long time and the page does not show the newly created task.
  • The Display Condition for tasks cannot be saved.
Following are the steps to reproduce the Display Condition issue.
Steps to Reproduce:
  1. Log in to Classic PPM and navigate to Administration, Objects, and then open the Task object.
  2. In the Views tab, click Edit Layout for Task Properties.
  3. Create a new Subpage
  4. Click on the Properties and Layout icon of the subpage.
  5. Click on Define Display Condition.
  6. In the Object drop-down, select Project (Master Object).
  7. In the Fields drop-down, select Investment Class.
  8. In the Operator drop-down, select “=”.
  9. Choose a value for Investment Class under Constant.
  10. Click Add and then click Save.
Expected Results
: The Display Condition is saved.
Actual Results:
The page keeps loading and the display condition is never saved.
DE58718 - Open in Scheduler Option (MSP/OWB) Does not Work in Clarity Tasks Module
Steps to Reproduce:
  1. Log in to Clarity.
  2. Open a project and go to the Tasks page.
  3. Click on the Actions icon on the top left and select either ' Microsoft Project Read Only' or 'Microsoft Project Read- Write'
This issue is also reproducible when you use OWB as the scheduler.
Expected Results:
The project opens in MSP.
Actual Results:
Nothing happens.
DE58122: Changing the Sequence of Financial Grouping Attributes Causes the Copy Cost Plan Action to Fail
Steps to Reproduce:
  1. Log in to Classic PPM as Administrator.
  2. Navigate to Administration, Lookups, search for *CAPTIONS*, and select LOOKUP_FIN_GROUPING_ATTRIBUTES_CAPTIONS.
  3. Go to the Values tab and change the Lookup Value Name for Charge Code to GL Account and Transaction Class to Cost Center.
  4. Navigate to Administration, Setup.
  5. Click on Entities and select an entity, example, Corporate. Click on the Plan Defaults tab.
  6. One by one add/save grouping attributes in the following order: GL Account (previously Charge Code), Department, Role, Cost Center (previously Transaction Class).
    Note: After GL Account and Department are added, the sequence appears fine when querying the database. However, when the Role attribute is added, the sequence switches as shown in the query results below, where department_id is 0 instead of charge_code_id.
    select * from odf_multi_valued_lookups where object like '%def%' 1 charge_code_id 0 department_id 2 role_id 3 transaction_class_id
  7. Open a project and attempt to create a manual cost plan in the Financial Plans tab.
  8. Run the below query for the cost plan created to confirm the grouping sequence
    select * from odf_multi_valued_lookups where object = 'costplan' and pk_id = 5003022 ORDER BY value Grouping looks like below as expected: 0 charge_code_id 1 department_id 2 role_id 3 transaction_class_id
  9. Using Copy Cost Plan Action, create a copy of the cost plan and use the following query to check the grouping sequence:
    select * from odf_multi_valued_lookups where object = 'costplan' and pk_id = 5003022 ORDER BY value Note that the sequence changes to alphabetical order. 2 charge_code_id 1 department_id 3 role_id 0 transaction_class_id
    It is not possible to update the grouping order through XOG either.
Expected Results:
The grouping attributes sequence should not change when using the Copy Cost Plan option.
Actual Results:
The grouping attributes sequence changes when using the Copy Cost Plan option, which in turn impacts the subsequent processes for that cost plan.
DE58233 - Dynamic Links are not Sorted Properly in Grid Layout
Steps to Reproduce:
  1. Go to Administration, Studio, Objects.
  2. Create a new master object with the following values:
    Name: Reports ID: ca_reports API enabled: Yes Object Extension:Investment Extension
  3. Create following attributes:
    String type (Name: code / ID: code / API Attribute ID: z_code) URL type (Name: Report Link / ID: ca_rpt_link / API Attribute ID: z_link)
  4. Navigate to Administration, Data Administration, Lookups.
  5. Create a dynamic query type lookup (Name: MenuLinks / ID ca_ml)   Add the following query:
    SELECT @SELECT:1:[email protected] ,@SELECT:X.link_details:[email protected] FROM ( SELECT ' <a href="'|| rp.ca_rpt_link ||'" <font color="Blue"><i><u>'||rp.code||'</u></i></font></a> ' LINK_DETAILS FROM odf_ca_ca_reports rp WHERE [email protected]:PARAM:USER_DEF:STRING:[email protected] UNION SELECT ' <a href="https://myclarityserver/niku/nu#" <font color="Blue"><i><u>MyReportLink</u></i></font></a> ' LINK_DETAILS FROM DUAL WHERE @WHERE:PARAM:USER_DEF:STRING:[email protected] IS NULL) X WHERE @[email protected]
  6. Create one more attribute at object level with the dynamic lookup field:
    Lookup type (Name: MenuLink Generic / ID: ca_ml_gen / Associated lookup: MenuLinks)
  7. Provide the default value available.
    Lookup Parameter Mappings: object_prnt_id = code
  8. Log in to Clarity.
  9. Go to Custom Investments and open the Reports object.
  10. Switch to the Grid view and add the Code and MenuLink to the view.
  11. Create an instance:
    Name: Monday Report Code: Leave it blank
    Menu Link defaults to MyReportLink.
  12. Add Monday Report value to the code.
    Menu Link changes to Monday Report
  13. Create a second instance:
    Name: Tuesday Report Code: Tuesday Report
    Menu Link displays Tuesday Report.
  14. Reorder the Reports list.
Expected Results:
The links display as per code: Monday Report, Tuesday Report.
Actual Results:
Both the links change to the initial code set, that is MyReportLink.
DE58537: Updates to Multi-Value Lookup Fields are Not Reflected in Classic PPM and Audit History
The steps below use an object-based multi-value lookup as an example.
Steps to Reproduce:
  1. Create an object (Master object, auto-number Code, populate several values using Name).
  2. Configure an object-based lookup to return Name and ID.
  3. Add a multi-valued attribute on the project object using the lookup based on that object, and include API ID.
  4. Add the new attribute to the layout in Classic PPM.
  5. Audit the new attribute for Insert, Delete, and Change.
  6. Add the new attribute to a blueprint in Clarity.
  7. Add a value to the attribute in Classic PPM and Save.
  8. Add another value to the attribute in Classic PPM and Save
  9. Remove one of the values in the attribute in Classic PPM and Save.
  10. Add an additional value to the attribute in Clarity and click off the field.
  11. Remove a value in the New UI and click off the field (there should be one value left)
Expected Results:
The Values for the attribute match in both the UIs. The Audit history shows the changes you made in both the UIs.
Actual Results:
The Values for the attribute do not match between the UIs - Clarity has 1 value and Classic PPM has 2 values. The Audit history does not show the deletions done in Clarity either - the record for the last deletion done in Clarity is missing. 
DE58454: Portfolio Waterline Movement Removes Color-Coding in Postgres Environment
Steps to Reproduce:
  1. Create a portfolio and add several investments with varying role demands and planned cost.
  2. Ensure that you have at least one role added to the Targets Page. For example, add the 'Architect' role and define a Target constraint.
  3. Go to the Waterlines page.
  4. Configure the page to add the 'Role: Architect' column in the view. Ensure that you can see this newly added column by moving the vertical line to the right.
  5. Create and run ranking rules.
  6. Find the Waterline.
  7. Move the Waterline down or up and observe the cell colors in the 'Target' columns.
Expected Results:
Color-coding in the Target columns should still be viewable.
Actual Results:
The Clarity portfolio shows the projects above and below the waterline, however when the waterline is moved, the color-coding disappears.
DE57458: DWH Full Load Job Fails During a Long-Running Select Query
Steps to Reproduce:
  1. Open a database tool.
  2. Run the following script:
    DO $$ DECLARE t bigint; BEGIN select issue_key into t from dwh_rim_issue where issue_key = 5000000; PERFORM pg_sleep(30); END $$
  3. While the above script is running, run the Load Datawarehouse Job - Full Load.
Expected Results:
The job completes successfully.
Actual Results:
The job aborts with a deadlock.
DE58834: Lookup Values Displayed in Clarity 15.9 May be Incorrect
Steps to Reproduce:
  1. Create a static lookup with values:
    Value A Value B Value C
  2. In the project object, create a lookup type attribute - My Project Values and associate it with the above lookup.
  3. Specify the API Attribute ID to ensure that the attribute displays in Clarity.
  4. Go to Administration, Blueprints in Clarity.
  5. Add the above attribute to a project Blueprint.
  6. Open an existing project that is associated with the Blueprint.
  7. Go to the Properties page.
  8. In the My Project Values attribute, select Value A.
  9. Go to the My Values lookup in Classic PPM and deactivate Value A.
  10. Open the project in Clarity again and open the My Project Values drop-down.
Expected Results:
Value B and Value C are selectable and Value A is not displayed in the list.
Actual Results:
Value A and Value B are selectable and Value C is missing.
DE58604 : Securability Fix
DE58202 : DWH Incremental Load Fails with Deadlock on CALL DWH_DISABLE_CONSTRAINTS_SP('DWH_FIN_PLAN_LN','FK')
Note: This is an intermittent issue seen in SaaS with Postgres.
Steps to Reproduce:
  1. Schedule the Load DWH job to run as an incremental once every hour or two.
  2. Monitor and wait for the intermittent failure due to deadlock error:
    ERROR 2020-09-29 10:19:44,135 [Thread-8022215] dwh.event no Records to Process? - An error occurred executing this job entry : Couldn't execute SQL: CALL DWH_DISABLE_CONSTRAINTS_SP('DWH_FIN_PLAN_LN','FK')ERROR: deadlock detected
Expected Results:
Load DWH Incremental runs without deadlock error
Actual Results:
The Load DWH Incremental intermittently fails with a deadlock error.
DE56355 : User Without the API - Access Permission is Getting API-1029: Authentication Error after Clarity UI Times Out
Reproducible only in some environments.
Steps to Reproduce:
  1. Create a basic user. Do not provide the API-access permission. Just give view access rights to Project/Idea and basic rights to Timesheets.
  2. Connect to Clarity.
  3. Wait for the Clarity UI to timeout.
  4. Now, click anywhere in Clarity UI.
  5. Re-enter the login credentials.
Expected Results:
The user is able to connect successfully.
Actual Results:
The user gets API-1029 : Authentication Error.
DE58438 : Ad Hoc Views and Reports Based on the OOTB Financial Management Domain are Failing
Steps to Reproduce:
  1. Create user-defined Adhoc views using the stock Financial Management domain.
  2. Run stock Financial Reports and run Adhoc Reports.
Expected Results:
The reports run successfully.
Actual Results:
The reports time out after 6 minutes.
Install the Patch
If you are an on-premise customer, download the patch from the Download Center on the Broadcom Support site.  If you are a SaaS customer, contact Broadcom Support.
  1. Back up all the files and the database on the target system.
  2. On the CSA server, copy the installer into a temp directory.
  3. Navigate to the temp directory.
  4. Enter the following command to extract the contents:
    jar xvf <patch_jar_file>
  5. Stop all local nsa, app and bg services using the following command:
    service stop nsa app bg
    Note: Allow databases and reports to continue running.
  6. From the temp directory, enter the following command to execute the installer script:
    install.bat or
  7. Follow the remaining on-screen instructions to complete the installer script.
  8. Start all services:
    service start all
  9. If you are running multiple servers in a cluster:
    1. Log in to CSA and go to the All Services page to shut down any remote app and bg services.
    2. Go to the Distribute All page, select remote servers, and click Distribute.
    3. Return to All Services page to restart services when the distribution is complete.
Uninstall the Patch
  1. Stop all local nsa, app, and bg services using the following command:
    service stop nsa app bg
  2. Restore the installation files and database from the backups above.
  3. Start all services:
    service start all
  4. If running multiple servers in a cluster:
    1. Log in to CSA and go to the All Services page to shut down any remote app and bg services.
    2. Go to the Distribute All page, select remote servers and click Distribute.
    3. Return to the All Services page to restart services when the distribution is complete.