- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
yesterday
I have created a custom pattern to discover a new application. Discovery is running fine, but the CMDB is getting duplicate CIs created.
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
yesterday
-
Check Identification Rules (IRE) → ensure unique keys (e.g., IP, hostname, serial number) are defined.
-
Validate that the Identifier in the Pattern is mapped correctly.
-
Disable other conflicting patterns that are discovering the same CI.
If you found my response helpful, I would greatly appreciate it if you could mark it as "Accepted Solution" and "Helpful."
Your support not only benefits the community but also encourages me to continue assisting. Thank you so much!
Thanks and Regards
Ravi Gaurav | ServiceNow MVP 2025,2024 | ServiceNow Practice Lead | Solution Architect
CGI
M.Tech in Data Science & AI
ï”— YouTube: https://www.youtube.com/@learnservicenowwithravi
ï”— LinkedIn: https://www.linkedin.com/in/ravi-gaurav-a67542aa/
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
yesterday
More Elaborate answer can be found in the below Link :
https://www.servicenow.com/docs/bundle/yokohama-it-operations-management/page/product/discovery/conc...
If you found my response helpful, I would greatly appreciate it if you could mark it as "Accepted Solution" and "Helpful."
Your support not only benefits the community but also encourages me to continue assisting. Thank you so much!
Thanks and Regards
Ravi Gaurav | ServiceNow MVP 2025,2024 | ServiceNow Practice Lead | Solution Architect
CGI
M.Tech in Data Science & AI
ï”— YouTube: https://www.youtube.com/@learnservicenowwithravi
ï”— LinkedIn: https://www.linkedin.com/in/ravi-gaurav-a67542aa/
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
yesterday
One more point Below writeup can also help you...
the Below is from Platformation Website
Root Causes & Troubleshooting Steps 1. Check Identification Rules (IRE)
Why important: The Identification and Reconciliation Engine (IRE) decides whether to insert a new CI or update an existing CI.
Troubleshooting:
Go to CMDB → Identification Rules.
Check the rule for the target CI class (e.g., cmdb_ci_appl, cmdb_ci_server).
Ensure that unique identifiers are correctly defined → e.g., serial_number, fqdn, ip_address, or name.
If you only rely on name, duplicates may occur because multiple devices may share the same application name.
Fix: Add stronger identifiers (e.g., combination of serial_number + manufacturer, or fqdn + IP).
Example:
For a server class → identifier should be Serial Number + Manufacturer.
For an application class → identifier could be Install Directory + Process Name.
2. Validate the Identifier in the Pattern
Why important: In a Discovery Pattern, the Identifier step maps discovered data to the Identification Rule. If the mapping is wrong or missing, IRE won’t match the existing record → it will insert a new CI.
Troubleshooting:
Open your Pattern Designer → Identifier Section.
Ensure attributes used by IRE are correctly populated (e.g., your script must parse serial_number if the IRE rule depends on it).
Run the Pattern Debugger and check the output → verify that values are being passed to the Identifier step.
Fix:
Update the Pattern to collect missing unique fields.
Example: If your IRE depends on fqdn, but your pattern only extracts hostname, then IRE won’t match → fix parsing step.
Example:
If identifier rule is fqdn + ip, then pattern must ensure both attributes are captured.
3. Disable or Reprioritize Conflicting Patterns
Why important: Sometimes multiple patterns can classify and insert the same CI (especially when both OOTB and custom patterns are enabled). This creates duplicate inserts.
Troubleshooting:
Check Discovery → Pattern Log and ECC Queue.
See if multiple patterns are triggered for the same IP/application.
Fix:
Either disable unnecessary OOTB patterns for this CI type.
Or adjust Classifier priorities so that only the intended pattern runs.
In case you want both patterns, ensure they update different attributes, not insert new CIs.
Additional Best Practices to Prevent Duplicates
Use Reconciliation Rules:
Define authoritative sources for CI updates (Discovery vs SCCM vs Manual entry).
Prevent non-authoritative sources from overwriting or duplicating.
Test with Pattern Debugger:
Run discovery with debugger to confirm identifier values are correctly resolved.
Check CI Data Quality:
Bad/missing values (like empty serial number) can lead to duplicate creation.
Example: If half your Linux servers don’t return serial_number, IRE may fail to match.
If you found my response helpful, I would greatly appreciate it if you could mark it as "Accepted Solution" and "Helpful."
Your support not only benefits the community but also encourages me to continue assisting. Thank you so much!
Thanks and Regards
Ravi Gaurav | ServiceNow MVP 2025,2024 | ServiceNow Practice Lead | Solution Architect
CGI
M.Tech in Data Science & AI
ï”— YouTube: https://www.youtube.com/@learnservicenowwithravi
ï”— LinkedIn: https://www.linkedin.com/in/ravi-gaurav-a67542aa/
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
yesterday
-
Check Identification Rules (IRE) → ensure unique keys (e.g., IP, hostname, serial number) are defined.
-
Validate that the Identifier in the Pattern is mapped correctly.
-
Disable other conflicting patterns that are discovering the same CI.
If you found my response helpful, I would greatly appreciate it if you could mark it as "Accepted Solution" and "Helpful."
Your support not only benefits the community but also encourages me to continue assisting. Thank you so much!
Thanks and Regards
Ravi Gaurav | ServiceNow MVP 2025,2024 | ServiceNow Practice Lead | Solution Architect
CGI
M.Tech in Data Science & AI
ï”— YouTube: https://www.youtube.com/@learnservicenowwithravi
ï”— LinkedIn: https://www.linkedin.com/in/ravi-gaurav-a67542aa/
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
yesterday
More Elaborate answer can be found in the below Link :
https://www.servicenow.com/docs/bundle/yokohama-it-operations-management/page/product/discovery/conc...
If you found my response helpful, I would greatly appreciate it if you could mark it as "Accepted Solution" and "Helpful."
Your support not only benefits the community but also encourages me to continue assisting. Thank you so much!
Thanks and Regards
Ravi Gaurav | ServiceNow MVP 2025,2024 | ServiceNow Practice Lead | Solution Architect
CGI
M.Tech in Data Science & AI
ï”— YouTube: https://www.youtube.com/@learnservicenowwithravi
ï”— LinkedIn: https://www.linkedin.com/in/ravi-gaurav-a67542aa/
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
yesterday
One more point Below writeup can also help you...
the Below is from Platformation Website
Root Causes & Troubleshooting Steps 1. Check Identification Rules (IRE)
Why important: The Identification and Reconciliation Engine (IRE) decides whether to insert a new CI or update an existing CI.
Troubleshooting:
Go to CMDB → Identification Rules.
Check the rule for the target CI class (e.g., cmdb_ci_appl, cmdb_ci_server).
Ensure that unique identifiers are correctly defined → e.g., serial_number, fqdn, ip_address, or name.
If you only rely on name, duplicates may occur because multiple devices may share the same application name.
Fix: Add stronger identifiers (e.g., combination of serial_number + manufacturer, or fqdn + IP).
Example:
For a server class → identifier should be Serial Number + Manufacturer.
For an application class → identifier could be Install Directory + Process Name.
2. Validate the Identifier in the Pattern
Why important: In a Discovery Pattern, the Identifier step maps discovered data to the Identification Rule. If the mapping is wrong or missing, IRE won’t match the existing record → it will insert a new CI.
Troubleshooting:
Open your Pattern Designer → Identifier Section.
Ensure attributes used by IRE are correctly populated (e.g., your script must parse serial_number if the IRE rule depends on it).
Run the Pattern Debugger and check the output → verify that values are being passed to the Identifier step.
Fix:
Update the Pattern to collect missing unique fields.
Example: If your IRE depends on fqdn, but your pattern only extracts hostname, then IRE won’t match → fix parsing step.
Example:
If identifier rule is fqdn + ip, then pattern must ensure both attributes are captured.
3. Disable or Reprioritize Conflicting Patterns
Why important: Sometimes multiple patterns can classify and insert the same CI (especially when both OOTB and custom patterns are enabled). This creates duplicate inserts.
Troubleshooting:
Check Discovery → Pattern Log and ECC Queue.
See if multiple patterns are triggered for the same IP/application.
Fix:
Either disable unnecessary OOTB patterns for this CI type.
Or adjust Classifier priorities so that only the intended pattern runs.
In case you want both patterns, ensure they update different attributes, not insert new CIs.
Additional Best Practices to Prevent Duplicates
Use Reconciliation Rules:
Define authoritative sources for CI updates (Discovery vs SCCM vs Manual entry).
Prevent non-authoritative sources from overwriting or duplicating.
Test with Pattern Debugger:
Run discovery with debugger to confirm identifier values are correctly resolved.
Check CI Data Quality:
Bad/missing values (like empty serial number) can lead to duplicate creation.
Example: If half your Linux servers don’t return serial_number, IRE may fail to match.
If you found my response helpful, I would greatly appreciate it if you could mark it as "Accepted Solution" and "Helpful."
Your support not only benefits the community but also encourages me to continue assisting. Thank you so much!
Thanks and Regards
Ravi Gaurav | ServiceNow MVP 2025,2024 | ServiceNow Practice Lead | Solution Architect
CGI
M.Tech in Data Science & AI
ï”— YouTube: https://www.youtube.com/@learnservicenowwithravi
ï”— LinkedIn: https://www.linkedin.com/in/ravi-gaurav-a67542aa/