After I add a new match rule to an entity type, do I still need to run the Cleanup Matches Task along with Rebuild Match Table, Potential Matches Reindex, and Reindex Data?
Answer
No. The Cleanup Matches Task is not required when you only add a new match rule; run the Rebuild Match Table task so existing records are evaluated against the new rule.
The Cleanup Matches Task removes potential matches, auto not-matches, and grouping matches from the MATCHES table for the match group URIs you pass in. A newly added rule has no stored matches yet, so the task has nothing to remove. It applies when you change or remove an existing rule, where matches created by the old logic are still stored. Even then, it is a recommended optimization for tenants with a large volume of potential matches, because it drops the outdated pairs faster than the rebuild would.
Which task is needed when
After adding a new rule, only the Rebuild Match Table task is required; the other three depend on what else changed.
| Task | Needed after adding a new rule? | When to run it |
|---|---|---|
| Rebuild Match Table | Yes | After you turn on or edit match rules, or edit survivorship rules for attributes used in match rules, once data is already loaded. |
| Cleanup Matches | No | When you change or remove existing match rules and want their stored matches purged. Recommended on tenants with many potential matches. |
| Potential Matches Reindex | Only if needed | When potential match counters look inconsistent, after Cleanup Matches (which does not update the potential matches index), or after a Reindex Data run without enableSeparateIndexing=true. |
| Reindex Data | Usually no | Only for specific configuration changes, such as a changed attribute type or label, a removed attribute or source, modified cleanse configuration, modified lookup mappings or modified MatchFieldUris. It does not rebuild match tables. |
Endpoints and request examples
Replace {environment} with your environment host and {tenantId} with your tenant ID. Every request needs an Authorization: Bearer <access_token> header and Content-Type: application/json.
Rebuild Match Table. Requires the ROLE_ADMIN_TENANT role. entityType is optional (all types are processed if omitted), and distributed=true with taskPartsCount splits the work across API nodes. No body rebuilds the whole entity type.
POST https://{environment}.reltio.com/reltio/api/{tenantId}/rebuildmatchtable?entityType=Organization&distributed=true&taskPartsCount=8To rebuild only specific entities, send their URIs as the body:
["entities/aaaaaaa", "entities/bbbbbbb"]
Cleanup Matches. Requires Execute privileges. entityType and rules are required; rules lists the URIs of the match groups whose matches should be deleted. The task runs well with eight or more parts.
POST https://{environment}.reltio.com/reltio/api/{tenantId}/cleanupMatches{
"entityType": "Organization",
"rules": [
"configuration/entityTypes/Organization/matchGroups/<ChangedOrRemovedRuleName>"
],
"distributed": true,
"taskPartsCount": 8
}The response describes the created job and reports counters such as numberOfProcessedObjects and totalNumberOfDeletedMatches.
Potential Matches Reindex. Requires a tenant admin role. The optional filter parameter limits the reindex to entities that match a condition.
POST https://{environment}.reltio.com/reltio/api/{tenantId}/rebuildpmcounters?distributed=true&taskPartsCount=4Reindex Data. Requires a tenant admin role. Set enableSeparateIndexing=true only when reindexing the entire tenant, never for a subset of entities. With it set, the task builds a new index, swaps it in on completion, and triggers the Potential Matches Reindex automatically.
POST https://{environment}.reltio.com/reltio/api/{tenantId}/reindex?distributed=true&taskPartsCount=8&enableSeparateIndexing=trueRecommended order
For a purely additive rule, run Rebuild Match Table and nothing else unless a check below applies.
- If the same change also altered attributes, sources, cleanse configuration, lookup mappings or
MatchFieldUris, run Reindex Data first. It does not rebuild match tables, so a rebuild must follow it. - If the same change also modified or removed existing match rules, run Cleanup Matches for those rule URIs before the rebuild, so the rebuild does not have to remove the outdated matches itself.
- Run Rebuild Match Table for the entity type.
- If potential match counters or the Hub view look inconsistent afterward, run Potential Matches Reindex. Skip this step if you used
enableSeparateIndexing=trueon Reindex Data, because it runs automatically.
Do not update the tenant business configuration while a Reindex Data task is running.
Comments
Please sign in to leave a comment.