At times, a computer name may need to be reused on the same computer or another computer. This type of automatic merge can have several implications.
Example scenario #1: Asset Management is being used to track computers. Computer A is managed and has associated asset data and resource associations. In the event a replacement computer is introduced into the environment with the same computer name, the two records will be automatically merged if the name.domain, FQDN or MAC Address are the same, thus removing the original computer from the SMP for asset tracking.
Example scenario #2: Inventory Solution is being used. Computer A is managed and provides the SMP with hardware, software, File level data and if applicable, Server applications. Computer B is then introduced into the environment. The two records will be merged if the name.domain, FQDN or MAC Address are the same, thus combining the inventory data of the original computer and the inventory of the new computer. Once a Complete inventory has run on the new computer for the individual inventory types (Hardware, Software, File properties, Server applications), the database would then only have the most recent inventory data and not that of the original computer. This will cause a data discrepancy until a complete inventory is received from the new computer.
In ITMS 7.x+, there is a core automatic process, which cannot be disabled, that will merge two computers that have the same name.domain, FQDN or MAC Address, which are considered Resource Type Merge Keys. The process takes place when the new computer name is introduced into the SMP and the Guid of the original computer will take precedence, and the new computer will not receive a new Guid but instead inherit the existing Guid.
Since the automatic merge cannot be disabled, there are two possible options. One is best practice when possible and the other is a workaround.
Use unique computer names in the environment. For example, use Serial Number or Asset Tags as part of the name. If it is the same computer, be mindful that there may be a discrepancy in inventory data until another complete inventory is received.
If there is the need to have multiple computer names in the SMP that represent either multiple physical computers or a rebuild of an existing computer, a workaround is:
Revise the built-in 'spResourceAssociationsInsert' Stored Procedure which is called whenever changing the status of a Computer. The revision tells the SMP to also delete the known Resource Keys for the computer. These keys are what is referenced to see if a computer already exists in the SMP with the same key value(s). Attached to this article is the revised 'spResourceAssociationsInsert' Stored Procedure available for download. It is currently revised to delete the Resource Keys if the status is "Disposed" or "Retired". The syntax uses the Guid of the status and not the name of the status. Additional status' can be added or deleted. Please backup the existing Stored Procedure before overwriting it.
Before introducing a new computer to the SMP with the same computer name, "Dispose" or "Retire" the computer, or any Status' that is defined in the revised Stored Procedure. This can be a right-click on the computer and "Set Asset Status" or when editing the computer record, if Asset Management is installed. This will prevent automated merging and will create another computer with the same name and unique Guid.
*** Note 1: If this is a Hierarchy, please run the updated Stored Procedure on all SMP databases. The status would need to be changed at the Child SMP level. Since best practice states that Asset Management should not be installed on a Child SMP, the only Status' to choose from would be "Active" and "Retired". *** Note 2: For all duplicate computers, it is recommended to review the "Computers with Duplicate Name" report often to determine if there are any duplicate computers that should actually be merged due to a computer reimage/rebuild.