When publish data dictionary of a custom type(publish_dd,c,,custom_type,,T), I get below error message:
[DM_DATA_DICT_E_COULD_NOT_PUBLISH_DATA_DICTIONARY_INFORMATION]error: "The Data Dictionary was unable to publish information for tcustom_type, locale en, an error occured."
[DM_DATA_DICT_E_UNABLE_TO_PUBLISH_INFO]error: "An error occured while trying to publish data dictionary information for handle tcustom_type, locale en"
[DM_DATA_DICT_F_SYNCHRONIZE_WITH_TYPE_FAILED]fatal: "Failure synchronizing dm_aggr_domain '51xxxxxxxxxxxxxxx' with type custom_type."
[DM_DATA_DICT_E_SCOPE_CONFIG_CANT_FETCH]error: "Cannot fetch - Invalid object ID '6cxxxxxxxxxxxxxxx'."
[DM_DATA_DICT_E_SCOPE_CONFIG_CANT_FETCH]error: "Cannot fetch - Invalid object ID '6cxxxxxxxxxxxxxxx'."
[DM_OBJ_MGR_E_FETCH_FAIL]error: "attempt to fetch object with handle 6cxxxxxxxxxxxxxxx failed"
Then I found dm_scope_config which has id=6cxxxxxxxxxxxxxxx does not exist, however type custom_type still hold it in its scope_config attribute of dmi_dd_type_info object. Then I tried to modify the dmi_dd_type_info object by api remove, save commands, but failed.
Finally, success to remove the not existing scope config value from the dmi_dd_type_info object by:
Get all scope_configs by:
#1. select r_object_id,scope_config from dmi_dd_type_info where type_name='custom_type';
and record the valid ones.
#2. alter type custom_type truncate scope_config; (clear all scope_configs)
#3. alter type custom_type append scope_config='6cxxxxxxxxxxxxxxx' publish;(add all valid scope_configs back)