Upgrade to 16.3.3 fails with error ODF-0917: Unable to make attribute odf_XXXX Data Warehouse enabled.
search cancel

Upgrade to 16.3.3 fails with error ODF-0917: Unable to make attribute odf_XXXX Data Warehouse enabled.

book

Article ID: 410242

calendar_today

Updated On:

Products

Clarity PPM SaaS Clarity PPM On Premise

Issue/Introduction

Upgrade from 16.3.2 to 16.3.3 fails with error:

Caused by: com.niku.union.utility.MessageKeyException: ODF-0917: Unable to make attribute odf_obs_fin_dept Data Warehouse enabled. An attribute with same code is already marked for deletion from Data Warehouse.
   at com.ca.clarity.object.datawarehouse.DataWareHouseAttributeProcessor.unMarkDwhAttributeAsDeleted(DataWareHouseAttributeProcessor.java:1949)
   at com.ca.clarity.object.datawarehouse.DataWareHouseAttrService.execute(DataWareHouseAttrService.java:187)

Attribute code will vary but will always be odf_ and point to an OBS lookup

This is only reproducible on datasets where the DWH job was not run for a very long time and data type has changed.

  1. Install new vanilla 16.3.2 system with demo data
  2. Connect to Clarity and create new OBS in Administration – OBS
  3. Associate it with Project and Resource
  4. Go to Resource – Attributes and note the field is there and enabled for DWH and you are not able to uncheck it.
  5. Make sure Load DWH job is Paused and not running
  6. Now open the OBS and remove Resource from Associated Objects
  7. Note the record is in DWH_META_COLUMNS with is_deleted = 1
  8. Start upgrade to 16.3.3

Expected Results: The upgrade to go through successfully

Actual Results: The upgrade fails with error:

Caused by: com.niku.union.utility.MessageKeyException: ODF-0917: Unable to make attribute odf_obs_fin_dept Data Warehouse enabled. An attribute with same code is already marked for deletion from Data Warehouse.
   at com.ca.clarity.object.datawarehouse.DataWareHouseAttributeProcessor.unMarkDwhAttributeAsDeleted(DataWareHouseAttributeProcessor.java:1949)
   at com.ca.clarity.object.datawarehouse.DataWareHouseAttrService.execute(DataWareHouseAttrService.java:187

 

Full error message - happens on DWH meta data bootstrap:

 

8/20/25, 10:31 PM (admin) DWH Enable the OBS Attribute to Associated Objects and Populating DWH Meta Data bootstrap...
8/20/25, 10:31 PM (admin) DWH Enable the OBS Attribute to Associated Objects and Populating DWH Meta Data bootstrap...
8/20/25, 10:31 PM (admin) Total bootstrap time: 0H:2M:18.46S
8/20/25, 10:31 PM (admin) Bootstrap time breakdown:
8/20/25, 10:31 PM (admin) Exception in thread "main" java.lang.reflect.InvocationTargetException
8/20/25, 10:31 PM (admin)     at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
8/20/25, 10:31 PM (admin)     at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
8/20/25, 10:31 PM (admin)     at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
8/20/25, 10:31 PM (admin)     at java.base/java.lang.reflect.Method.invoke(Method.java:569)
8/20/25, 10:31 PM (admin)     at com.niku.odf.object.Bootstrap.populateOBSAttributesToDWH(Bootstrap.java:3863)
8/20/25, 10:31 PM (admin)     at com.niku.odf.object.Bootstrap.main(Bootstrap.java:1513)
8/20/25, 10:31 PM (admin)     at com.niku.odf.object.Bootstrap.main(Bootstrap.java:1130)
8/20/25, 10:31 PM (admin) Caused by: com.niku.union.utility.MessageKeyException: ODF-0917: Unable to make attribute odf_xxxx_n373221705 Data Warehouse enabled. An attribute with same code is already marked for deletion from Data Warehouse.
8/20/25, 10:31 PM (admin)     at com.ca.clarity.object.datawarehouse.DataWareHouseAttributeProcessor.unMarkDwhAttributeAsDeleted(DataWareHouseAttributeProcessor.java:1949)
8/20/25, 10:31 PM (admin)     at com.ca.clarity.object.datawarehouse.DataWareHouseAttrService.execute(DataWareHouseAttrService.java:187)
8/20/25, 10:31 PM (admin)     at com.ca.platform.osf.object.service.AttributeCreateUtil.createDWHAttributeMetaData(AttributeCreateUtil.java:87)
8/20/25, 10:31 PM (admin)     at com.niku.nmc.obs.util.ObjectAssociationHandler.processOBSObjectAssociations(ObjectAssociationHandler.java:310)
8/20/25, 10:31 PM (admin)     at com.niku.nmc.obs.util.ObjectAssociationHandler.processObjectAssociations(ObjectAssociationHandler.java:256)
8/20/25, 10:31 PM (admin)     ... 7 more
8/20/25, 10:31 PM (admin) Total bootstrap time: 0H:2M:18.46S
8/20/25, 10:31 PM (admin) Bootstrap time breakdown:
8/20/25, 10:31 PM (admin) Exception in thread "main" java.lang.reflect.InvocationTargetException
8/20/25, 10:31 PM (admin)     at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
8/20/25, 10:31 PM (admin)     at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
8/20/25, 10:31 PM (admin)     at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
8/20/25, 10:31 PM (admin)     at java.base/java.lang.reflect.Method.invoke(Method.java:569)
8/20/25, 10:31 PM (admin)     at com.niku.odf.object.Bootstrap.populateOBSAttributesToDWH(Bootstrap.java:3863)
8/20/25, 10:31 PM (admin)     at com.niku.odf.object.Bootstrap.main(Bootstrap.java:1513)
8/20/25, 10:31 PM (admin)     at com.niku.odf.object.Bootstrap.main(Bootstrap.java:1130)
8/20/25, 10:31 PM (admin) Caused by: com.niku.union.utility.MessageKeyException: ODF-0917: Unable to make attribute odf_xxxx_n373221705 Data Warehouse enabled. An attribute with same code is already marked for deletion from Data Warehouse.
8/20/25, 10:31 PM (admin)     at com.ca.clarity.object.datawarehouse.DataWareHouseAttributeProcessor.unMarkDwhAttributeAsDeleted(DataWareHouseAttributeProcessor.java:1949)
8/20/25, 10:31 PM (admin)     at com.ca.clarity.object.datawarehouse.DataWareHouseAttrService.execute(DataWareHouseAttrService.java:187)
8/20/25, 10:31 PM (admin)     at com.ca.platform.osf.object.service.AttributeCreateUtil.createDWHAttributeMetaData(AttributeCreateUtil.java:87)
8/20/25, 10:31 PM (admin)     at com.niku.nmc.obs.util.ObjectAssociationHandler.processOBSObjectAssociations(ObjectAssociationHandler.java:310)
8/20/25, 10:31 PM (admin)     at com.niku.nmc.obs.util.ObjectAssociationHandler.processObjectAssociations(ObjectAssociationHandler.java:256)
8/20/25, 10:31 PM (admin)     ... 7 more
8/20/25, 10:31 PM (admin) ERROR: Upgrade failed for tenant  
8/20/25, 10:31 PM (admin) ERROR: Upgrade failed for tenant  

 

Cause

An OBS Field was added, then the type was changed, however the DWH job was never run

Resolution

Reviewed as DE174774 and code behavior is expected and cannot be adjusted

Use the workarounds below and educate the customer to run the jobs

Workaround:

Option 1:

Run a Load DWH - Full Load 

Option 2:

  1. Verify all OBS fields with query:
    • select * from dwh_meta_columns
    • where is_deleted =1 and attribute_code like 'odf_%'
  2. Ensure those are the OBS custom fields.
  3. Connect to UI – Run Load Data warehouse job – Full until all fields are updated

Option 3:

If not able to access UI - Run the update statement:

  1. update dwh_meta_columns 
    set is_deleted =0
    where attribute_code like 'odf_%'
    and is_deleted =1
  2. Re-run the upgrade
  3. Reset the same field to is_deleted =1 and run Load Data Warehouse job at a later time with customer