How ServiceNow Discovery Handles the retired/idle/stale software installations?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
2 hours ago
hello friends,
Hope you are all doing good !
I would like to understand how ServiceNow handles the software installations record creation if same software gets upgraded to newer version on target machine .e.g. version gets updated from 10 to 11. How ServiceNow Discovery handles this? This is created as new software installation record (cmdb_sam_sw_install) or existing gets updated? How is this achieved?
Thanks in advance,
Rauhl
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
2 hours ago
Hi Rahul,
This is a great question regarding how the CMDB maintains accuracy.
To answer your specific scenario (Software upgrade from v10 to v11): ServiceNow will Create a New Record for version 11 and Delete the record for version 10.
How is this achieved? (The Technical Logic)
It works this way because of how the Uniqueness Criteria (Coalesce strategy) works for the Software Installation table (cmdb_sam_sw_install) and the Discovery Reconciliation process.
1. The "Identity" of an Install The system identifies a software installation record as unique based on a combination of fields, typically:
Installed on (The CI)
Display Name
Display Version
Because the Version is part of the unique key, "Software v10" and "Software v11" are considered two completely different entities, not just an update of a field.
2. The Discovery Reconciliation Process When Discovery runs on the target machine, it performs a "Snapshot" comparison:
Scan: Discovery checks the machine and sees only version 11 is present.
Compare: It compares this result with the ServiceNow Database (which currently holds version 10).
Action:
It sees v11 in the payload but not in the DB -> Creates v11.
It sees v10 in the DB but not in the payload (it is absent) -> Deletes v10.
Why Delete instead of Retire? Unlike Hardware CIs (which are marked as "Retired" or "Absent"), Software Installation records are typically deleted when they are no longer found. This is done to ensure Software Asset Management (SAM) calculations are accurate. If the system kept "Retired" installation records, it might incorrectly count them against your license usage or complicate compliance reports.
Summary: The upgrade is treated as an "Uninstall of v10" and an "Install of v11".
If this response helps you, please mark it as Accepted Solution.
This helps the community grow and assists others in finding valid answers faster.
Best regards, Brandão.
