Problem
We can see that you applied the update on Wednesday, July 9, 2025, at 11:37:26.609, and we confirm that the attribute was added. The historical slice for the entity returned a correct result and a visible attribute for configuration/entityTypes/Product/attributes/ProductCableReels/attributes/ProductID.
{
"uri": "activities/a646635d-4832-4d24-86e6-11129d120d56",
"user": "AFL_RIH_INTEGRATION_CLIENT_ID",
"timestamp": 1752061046609,
"items": [
{
"id": "00004-0kwrwuy",
"user": "AFL_RIH_INTEGRATION_CLIENT_ID",
"method": "POST",
"url": "/reltio/api/5hoElZPJe5P0i5w/entities",
"clientType": "udl-default",
"timestamp": 1752061046609,
"objectUri": "entities/0OsrWRU",
"objectType": "configuration/entityTypes/Product",
"objectLabel": "REL10091",
"data": {
"type": "ENTITY_CHANGED"
},
"deltaCollection": {
"ovChanged": true,
"delta": [
{
"type": "ATTRIBUTE_ADDED",
"ProductID": [
{
"value": "1804616~266",
"ov": true,
"id": "1WfbobTo",
"sources": [
"200EBS"
],
"crosswalks": [
{
"type": "configuration/sources/200EBS",
"value": "1804616~266"
}
]
}
],On 16 July 2025 09:00:19.036, you performed another update "entities/0OsrWRU/attributes/ProductCableReels/1Wfbo7e0/ProductID/1WfbobTo" using the same crosswalk source and crosswalk value. Now, the attribute has disappeared and can not be reapplied. This created a broken crosswalk.
{
"uri": "activities/c726eb8f-452e-4da7-aa54-ea1520e54d89",
"user": "aditiazad.verma@reltio.com",
"timestamp": 1752670819036,
"items": [
{
"id": "00004-0qvqv3o",
"user": "aditiazad.verma@reltio.com",
"method": "POST",
"url": "/reltio/api/5hoElZPJe5P0i5w/entities",
"clientType": "udl-default",
"timestamp": 1752670819036,
"objectUri": "entities/0OsrWRU",
"objectType": "configuration/entityTypes/Product",
"objectLabel": "REL10091",
"data": {
"type": "ENTITY_CHANGED"
},
"deltaCollection": {
"ovChanged": false
},
"eventId": "1752670819036_06ybAPA"
}
],
"itemsTotal": 1
},
I believe that when you attempt to reapply ProductID = "1804616~266" from 200EBS, Reltio’s survivorship engine will perform the following actions.
Evaluated ReltioWinsStrategy (no new ov: true explicitly set)
Fell into source-specific override for 200EBS:
Strategy: OldestValue
Since the existing value "1804616~266" already exists and is considered older, your re-post of the same value is rejected.
Solution
Run the EntityCrosswalksConsistencyTask, follow these steps:
This task checks for entities with duplicate crosswalks, typically caused by parallel loading processes. It can also restore missing crosswalk records and remove extra records.
How to Run
Required Role:
You must have an Admin role to run this task.
API Endpoint:
Use a POST request to:
{ApplicationURL}/duplicateCrosswalksCheckFor tenant-specific execution (Tenant Admin role):
{ApplicationURL}/api/{tenantId}/duplicateCrosswalksCheck
Parameters:
tenantId(required for tenant-specific endpoint): The ID of the tenant.maxResultsToStore(optional): Limits the number of entity IDs with inconsistencies stored in the task status. Default is 500.checkDeletedCrosswalks(optional): If true, restores missing crosswalk records that exist in the object but are missing in the EXTERNAL_CROSSWALKS column family. Default is false.checkExistence(optional): If true, removes extra records in EXTERNAL_CROSSWALKS that do not correspond to real objects. Default is false.
Example Request Body:
{ "tenantId": "yourTenantId", "maxResultsToStore": 500, "checkDeletedCrosswalks": true, "checkExistence": true }Task Control:
The task supports stop and pause operations.
Summary Table
Parameter | Required | Description |
|---|---|---|
tenantId | Yes | ID of the tenant to check for duplicate crosswalks |
maxResultsToStore | No | Max number of entity IDs with inconsistencies to store (default: 500) |
checkDeletedCrosswalks | No | Restore missing crosswalk records (default: false) |
checkExistence | No | Remove extra crosswalk records not present in real objects (default: false) |
Comments
Please sign in to leave a comment.