CMDB Identification Error: Missing mandatory field


Description

Discovery of a device is failing with missing Mandatory field error.

CMDB Identification Error: Missing mandatory field

or something more specific like:

Discovery error 'Identifier: validation error: cmdb_ci_ip_address: missing mandatory fields: name'

Release or Environment

All recent releases. More likely to be seen after Probe to Pattern migration for Discovery.

Cause

You will encounter this issue when the system property "glide.required.attribute.enabled" is set to "true", and the CMDB Identification & Reconciliation engine looks for all the mandatory attributes for a particular CI class/Table, as set in the Dictionary or CI Class Manager, and checks to see if all the mandatory values are coming in as part of the payload. 

e.g. If "location" is set as Mandatory on the cmdb_ci_win_server class, Identification engine expects it to be part of the payload before it tries to insert/update into the table.

Resolution

There are at least 3 ways to avoid this error: