Question
Reltio ID 1ee06514-f575-86a5-89c8-00013b4d93b3 is the winning ID for entity.
There are multiple Reltio IDs associated to this entity but 1ee06514-f575-86a5-89c8-00013b4d93b3 should be the winner based on our survivorship rules.
The issue that we are seeing though is that the queue messages are all being sent out with Reltio ID 1ee06514-f575-86a7-89c8-00013b4cd3b3, which is another Reltio ID associated to the entity but not the winning id.
This is causing issues with our downstream applications receiving incorrect ids.
Use case Example message
1ee06514-f575-86a7-89c8-00013b4cd3b3 (incorrect winner)
Pubsub message:
{
"op_type": "ENTITY_CHANGED",
"obj_version": "31000000000",
"crm_account_id": "1ee06514-f575-86a7-89c8-00013b4cd3b3",
"message_id": "8516609085717195",
"publish_time": "2023-06-29 09:21:46.043000 UTC",
"data": "{\"type\":\"ENTITY_CHANGED\",\"object\":{\"uri\":\"entities/<entityId>\",
"ov\":true,\"value\":\"1ee06514-f575-86a7-89c8-00013b4cd3b3\",\"uri\":\"entities/<entityID>/attributes/ReltioId/2DQKyZ\"}
1ee06514-f575-86a7-89c8-00013b4cd3b3 (incorrect winner)
Pubsub message:
{
"op_type": "ENTITY_CHANGED",
"obj_version": "31000000000",
"crm_account_id": "1ee06514-f575-86a7-89c8-00013b4cd3b3",
"message_id": "8516609085717195",
"publish_time": "2023-06-29 09:21:46.043000 UTC",
"data": "{\"type\":\"ENTITY_CHANGED\",\"object\":{\"uri\":\"entities/<entityID>\",
"ov\":true,\"value\":\"1ee06514-f575-86a7-89c8-00013b4cd3b3\",\"uri\":\"entities/<entityId>/attributes/ReltioId/2DQKyZ\"}
Answer
- Check the survivorship rules for ReltioId. Make sure that there is a fallback strategy defined in the L3 configuration. In the below example, you could have two crosswalks for the ReltioID that has the SAME createdDate. This will cause the ReltioId to flip back and forth between two ReltioID that have the same createdDate during the event publish process.
"mapping": [
{
"attribute": "configuration/entityTypes/Contact/attributes/ReltioId",
"fallbackStrategies": [
{
"attribute": "configuration/entityTypes/Contact/attributes/ReltioId",
"survivorshipStrategy": "MinValue"
}
],
"fallbackUsingCriteria": "MORE_THAN_ONE",
"survivorshipStrategy": "OldestValue"
},
- Check whether you have advanced survivorship defined as true in the physical tenant. Read the documentation link dealing with survivorship defined by the customer. In the below case, we needed to apply. When this was applied, we are forcing both OV values to be set as winners and we force the fallback strategy to come into play during the ov calculation. Read the information in OV calculation link.
"survivorshipAdvancedBehavior": [
"OldestValue"
],
- Execute a full re-index with enableSeperateIndexing turned on.
Comments
Please sign in to leave a comment.