IntegrationHub ETL updating instead of inserting

Ryan S
Mega Sage

I've inherited an IntegrationHub ETL configuration and am stuck on troubleshooting. I am importing new records to cmdb_ci_server and some of the records are 'updated' instead of 'inserted.' None of these records existed to begin with. I tried a test file with 4 servers. Obviously more attributes, but starting with what might be the culprit:

NameCompany
abcdAcme
abcdOceania
xyzAcme
xyzOceania

 

Yes, Acme and Oceania both have 2 servers with the same name. When I run the Robust Transform, I'm only getting 2 records inserted and 2 updated. What's weird is, if abcd for Acme gets created and the one for Oceania says updated, none of the values on abcd reflect Oceania so I don't know what it's actually updating.

 

How do I troubleshoot this? How do I get 4 records updated now, and later if I need to run an update (say, the status needs updated on Acme xyz) how can I run another import and ensure that record is updated?

3 REPLIES 3

Simon Christens
Mega Sage

IntegrationHub ETL uses CI Class Manager (IRE - Identification and Reconciliation Engine) to identify CIs.

Depending on the setup in the Identification rules in CI Class Manager - SN either inserts or updates CIs.

These are the default behaviour

SimonChristens_0-1769487581642.png

 

As you can see theres a check on the name - which causes your CIs to be updated if the name already exists.
So what you need to do is to create a new Identification rule that uses both Name and Company to ensure that CIs can have the same name if the Company is different.

Click "Replace" - add an independant identification rule that includes Name and Company and see if that helps

SimonChristens_1-1769487909176.png

 

Hi Simon, thanks for the response. It appears we do have a rule already created for that (Priority 10). See screenshot. But I do see 'Name' is also listed in Priority 300.Screenshot 2026-01-26 233441.png

 

Interesting

How does you Integraionhub ETL looks like when handling data?

Are you looking up the company and return the sys_id in a temp variable?

You can check it in the setup - maybe something like:

SimonChristens_0-1769491459074.png

And then map the temp variable to the company field on the Server table in the mapping part of ETL