Troubleshooting duplication issues in CMDB

When you observe duplication issues in CMDB, use the troubleshooting steps described in this section to either resolve the problem or create a BMC Support case.

Issue symptom

CMDB users report seeing duplicate BMC_ComputerSystem CIs in BMC Helix CMDB.

Issue scope

  • The CMDB involved is the BMC Helix CMDB (On-premise of SAAS).
  • The duplicates are BMC_ComputerSystem CIs.
  • The duplicates are occurring in the BMC.ADDM dataset, which is the Discovery Synchronization CMDB Dataset.

Resolution

Perform the following steps to troubleshoot and resolve duplicates in the CMDB:

  1. Log in to BMC Helix CMDB.
  2. Verify that the duplicates are actually in the Discovery CMDB dataset.
    This can be done from the BMC_ComputerSystem Form. When performing the search, do the following: 
    1. Enter the name of the BMC_ComputerSystem CI.
    2. In the DatasetId list, select the BMC Discovery Synchronization dataset (usually BMC.ADDM).  
    3. Click Search.
  3. Review data in CMDB to determine if one CI is set to MarkAsDeleted = Yes.
    • If two records were returned in Step 2 above, select one at a time and look at the field named MarkAsDeleted
    • If one of these two BMC_ComputerSystem CIs are set to MarkAsDeleted = Yes, it means that this is not a duplicate. Rather, this is an expected result of Identity change and Model Maintenance in BMC Discovery. Reconciliation is expected to fail for this BMC_ComputerSystem CI until the expected Identify, Merge, and Purge jobs are run in CMDB to remove the CI that is set as  MarkedAsDeleted = Yes. As a result, this is not a duplicate.
  4. If one of the BMC_ComputerSystem CIs is not set to MarkAsDeleted = Yes, then review the data in BMC Discovery. 
  5. In most cases, BMC Discovery shows that one device is in the process of aging out (determined by a negative age count attribute) but has not yet reached the Model Maintenance Thresholds for destruction defined in BMC Discovery. In this case, it is necessary to await additional failed discovery runs. Once the destruction thresholds are reached in BMC Discovery, Synchronization will set the MarkAsDeleted attribute to Yes in the CMDB. You can determine the age count (attribute "age_count") in BMC Discovery by executing the following Generic Search Query:

    Search FLAGS(include_destroyed) Host where name matches 'abc' show name, key, uuid, serial, 
    partition_id, zone_uuid, hostid, zonename, os_type, type, hostname, __all_mac_addrs, 
    virtual,__all_ip_addrs, destroyed(#) as 'Destroyed?', 
    friendlyTime(destructionTime(#)) as 'DestructionTime', last_update_success, age_count, 
    friendlyTime(creationTime(#)) as 'CreationTime'
  6. It is important to note that even though two BMC_ComputerSystem CIs may have the same name, this does not automatically mean that one is a duplicate. Rather, they may have different Serial Numbers, UUIDs, IP Addresses or other attributes that are used to infer identity. This can be determined with queries run from BMC Discovery. For more information, see Troubleshooting duplication issues in BMC Discovery.
  7. In CMDB, log in as the configured Discovery synchronization user and attempt to find and view BMC_Computersystem CIs.
    In some cases, the Synchronization userid may have been created in CMDB with incorrect permissions.  This results in all records in BMC.ADDM to be written to, but not read, leading to true duplicates being created. If this is the case, contact your CMDB administrator to correct the userid authorization. If you login as the sync user and cannot see the CIs at all using the core forms, this may indicate the problem above.


Was this page helpful? Yes No Submitting... Thank you

Comments