Notifications

15 views

Description

Data source precedence rules have been defined in case multiple data sources are authorized to update the same table or the same table attributes in the CMDB, however the Discovery Source or system-based fields are updated regardless, ignoring these rules. These fields are:

 
discovery_source
sys_class_name
sys_class_path
sys_created_by
sys_created_on
sys_domain
sys_domain_path
sys_id
sys_mod_count
sys_updated_by
sys_updated_on

Cause

IRE (Identification and Reconciliation Engine) does not reconcile system fields. Hence, by design lower priority datasource is able to update sys-based fields. It should also update the discovery_source field.

Resolution

You can use a simple payload like the one below to verify that reconciliation is working for non system or discovery source fields. Run the background script code multiple times with different values for serial number and data source.

 

var payload = {
"items": [
{
"className": "cmdb_ci_computer",
"values": {
"serial_number": testr23456,
"name": testr234
},
"related": []
}
],
"relations": []
};

var input = new JSON().encode(payload);
var output = SNC.IdentificationEngineScriptableApi.createOrUpdateCI(Service-now, input);
gs.print(output);

 

 

Article Information

Last Updated:2019-11-28 12:56:30
Published:2019-11-21