Skip to main content

Bulk Jobs Reference

Job types​

TypeDoesScope
Entity ingestCreates recordsThe submitted payload
Entity updateUpdates recordsThe submitted payload
Match indexRecomputes blocking keysEntity type or tenant
Match runRuns matchingEntity type or tenant
Match retierRe-evaluates queued pairs against changed thresholdsEntity type or tenant
Data quality scoreRecomputes scoresEntity type or tenant
Label recomputeRebuilds display labelsEntity type or tenant
Assertion backfillEvaluates existing evidence against a resolution ruleTenant, or one rule
Assertion resolveResolves pending relationship assertionsTenant

Recompute types accept a tenant-wide scope, so "rescore everything" is one submission rather than an orchestration you assemble yourself.

Statuses​

StatusMeaning
QueuedAccepted, awaiting a worker
RunningBeing processed
CompletedFinished with every row succeeding
Completed with errorsFinished, but some rows failed — a distinct terminal status
FailedCould not complete
Dead letterExhausted its retries and was set aside
CancelledStopped by request

Check for the "completed with errors" status, not only the row-error count. It is a terminal status in its own right, so a job that finished with failures is distinguishable from one that finished cleanly without inspecting counts.

Progress​

Progress is derived from completed chunks plus live progress inside in-flight ones, so it reflects real work rather than an estimate — and a stalled job visibly stops advancing.

Resilience​

EventBehaviour
A worker dies mid-chunkAnother reclaims it; at most that chunk is redone
A worker stallsDetected by two independent signals and its work reclaimed
A chunk fails repeatedlyMarked failed; the rest of the job continues
A worker returns after being reclaimedIts late writes are rejected, not applied

The last one matters more than it appears: without it, a returning worker could overwrite a peer's completed work and silently corrupt the job's totals.

Backpressure​

Submissions exceeding capacity are rejected rather than queued indefinitely, with a retry interval.

ConditionStatus
Too many rows in one submission400
Payload too large413
Per-tenant queue or rate limit reached429
Platform saturated503

Honour the retry interval. Retrying immediately makes the condition worse.

Row errors​

Recorded per row with the reason. Fix and resubmit only the failed rows — resubmitting everything reprocesses what already succeeded.

Next​