ERROR 220: Relationship Sync Failure
Problem
An attempt to sync the Pulsar app fails, and the log file shows an ERROR 220, with a 'failed' statement followed by (220).
Example 1 - missing target object type
[2022-04-04 18:56:17,651018][INFO][15676] - relationship loop: attempting to generate sync items for depth (3)
[2022-04-04 18:56:17,651018][INFO][15676] - Relationship sync: calculating sync items for depth 3
[2022-04-04 18:56:17,978602][ERROR][15676] - getRelQuery: missing target object type (LinkedArticle)
[2022-04-04 18:56:17,978602][ERROR][15676] - getRelQueryBatchCount: failed (220)
[2022-04-04 18:56:17,978602][ERROR][15676] - generateSyncItemsAtDepth: failed to get batch count (220)
[2022-04-04 18:56:17,978602][INFO][15676] - Rolling back transaction
[2022-04-04 18:56:17,978602][ERROR][15676] - doRelationshipSync failed (220)
In this example, the user has a relationship setting to fetch LinkedArticle object but they don't have access to it. The ‘missing target object type’ message indicates which object the user needs.
Example 2 - target object missing field
[28] Error message in getRelQuery: getRelQuery: target object missing field (NR_Defect__c,Asset__c)
[29] Error message in getRelQueryBatchCount: getRelQueryBatchCount: failed (220)
[30] Error message in generateSyncItemsAtDepth: generateSyncItemsAtDepth: failed to get batch count (220)
[31] Info message in generateSyncItemsAtDepth: Rolling back transaction
[32] Error message in syncQueryModifiedIfNecessary: doRelationshipSync failed (220)
[33] Error message in sync3: syncQueryModifiedIfNecessary (Relationship Sync) failed (220)
[34] Info message in integrateAfterSync: integrateAfterSync: skipped due to sync failure (220)
In this example, the user has a relationship defined by some fields, but does not have access to the fields. The ‘target object missing field’ message indicates which fields the user needs.
Solution
The admin needs to do one of the following:
Solution | Reason | More Information |
---|---|---|
Grant the correct user permission or access in Salesforce.
| The user does not have permission to access the desired object. The user does not have access to all of the fields in the relationship being synced. | |
Create the correct relationship sync setting in Pulsar. Update pulsar.sync.relationship.directives. | Pulsar is not set up to sync the desired object. |
Â