Creating precedence sets and associations for reconciliation merge activities
BMC CMDB includes standard identification and precedence rules for setting precedence values for datasets, classes, or attributes before running a reconciliation merge activity.
A configuration manager can also create custom precedence rules for reconciliation jobs.
Precedence sets and values
A precedence set defines the precedence value for a dataset in a merge activity. Each source dataset is paired with a precedence set. This set serves as the default precedence value for all classes and attributes in that dataset. For example, if precedence value is not assigned to the classes and attributes in a dataset, they carry the value set at the dataset level. When the merge activity runs, if the dataset value and the class or attribute value are not the same, the precedence value assigned at the attribute level is considered. Class-level precedence values apply to all attributes of the class. By default, the dataset precedence value is 100. You can change the precedence values for classes and attributes to override the value set at the dataset level or class level too.
Specifying precedence values to attributes while merging datasets
Precedence values do not apply to the core attributes.
AssignedTo, AttributeDataSourceList, ClassId, CMDBRowLevelSecurity, CMDBWriteSecurity, CreateDate, DatasetId, InstanceId, LastModifiedBy, ModifiedDate, NormalizationStatus, ReconciliationIdentity, ReconciliationMergeStatus, Submitter.
In the BMC.ASSET dataset, values for configuration item (CI) attributes set in Remedy with Smart IT or BMC Asset Management take precedence over CMDB Explorer changes to those CIs.
Precedence associations for reconciliation merge activities
A precedence association links a dataset with a precedence set and can be reused among merge activities.
Each merge activity is linked to one precedence association that determines the precedence for each dataset that participates in the activity.
The following figure shows a sample list of existing associations that you can choose from for a merge activity.
Setting the merge precedence when reconciling multiple datasets to a target dataset
When you merge the data from multiple source datasets into a target dataset, you can choose the classes and attributes from a source dataset that can be merged.
- Use the highest class level applicable to take advantage of inheritance. If you make changes to an attribute but another dataset with higher merge precedence has provided a value for this attribute, your changes to the attribute are not promoted.
- A precedence set can be paired with different datasets in different activities. Likewise, a given dataset can be paired with different precedence association sets in different activities. Therefore, design your precedence sets for flexibility. You will need to create fewer precedence sets.
Modifying the merge precedence set for the Sandbox dataset can affect BMC Asset Management integrity. Before modifying the default behavior, you should carefully evaluate these changes. For example, lowering the precedence settings to the same level as the personal Sandbox.
If the CI that you have created has values for location attribute, you must set the correct precedence values for location attributes so that the value is not overridden by the providers who are not authorized to populate the location attribute.
To define a precedence set for merging datasets
- From the CMDB UI, select Configurations > Manage Reconciliation Rules > Precedence Exceptions.
- To create a new Precedence Set, click Add Precedence Set.
- Select the dataset to create merge ruleset and set the precedence values.
- The precedence set area is displayed on the screen.
In the Precedence Set area, enter the required information in the following fields.
Merge Ruleset Name
Type a unique name for the precedence set. The name cannot contain any characters that are not allowed in file names for the operating system of your server. For example, on a Windows server, your job name cannot contain the following characters: \ / : * ? " < > |.
Merge Order When multiple source datasets have the same precedence value, the Merge Order value determines the dataset that is merged to the target dataset. The lower the value of the Merge Order, the higher the priority for that dataset. You can assign values starting from 0 (Zero).
Select this option to require explicit precedence entries for classes and attributes. You must add precedence rules for the classes and attributes.
Clear this option to apply this precedence set to all classes and attributes for which a precedence is not defined.
Ignore If Null
Define how to handle empty, or NULL, attributes in the dataset associated with the precedence set. The Ignore if Null setting at the precedence set level is overridden by the same setting in any precedences defined for the set.
Note: This field is visible for custom jobs and not for standard jobs.
Checked — If the value of an attribute in this dataset is NULL and the precedence value for this dataset is the highest, the merge activity ignores the dataset. Do not write NULL to the production dataset.
Cleared — Apply the precedence value for this dataset regardless of whether an attribute value is NULL.Warning: If used incorrectly, Ignore if Null can cause instances that cannot be deleted.
Enter or select a value for the dataset that uses this precedence set. Assign a value from 0 through 1000, inclusive, with higher numbers meaning a higher priority. The precedence value is overridden by the value in any other precedence defined for the set.
Select the class to which this must apply precedence.
If the precedence is for an attribute, select it from the Attribute list and enter a precedence value.
Status Select Active to ensure that the precedence value is considered for the merge activity. You can later disable the activity by changing it to Inactive.
- After adding the precedence values, click Save to save the merge ruleset for the selected dataset.
Similarly, you can set precedence values for multiple datasets within a precedence set.
You can now relate the precedence set to a dataset by creating a precedence association.
To associate a dataset with a precedence set for merging datasets
- In the Precedence Exception area, click on Select Association Set, and choose a Precedence Set from the list.
- View, create, and edit the merge ruleset for any of the datasets in the precedence set edit area is displayed on the screen.
- If you make any changes to values in the selected precedence set, click Save to save your changes.