DATA OPS

Quarantine Replay for Warehouse-to-Salesforce Sync

On a schedule, replays previously quarantined Snowflake rows back into Salesforce, releases the ones that now succeed.

CategoryData Ops
Enginesim
Difficultyintermediate
Triggerschedule
Steps6
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerScheduled quarantine drain (hourly/nightly)
  • ActionRead pending rows from Snowflake quarantine tableSnowflakeSnowflake
  • ActionReplay rows into SalesforceSalesforce
  • LogicClear successes, bump retry count on failures
  • ActionUpdate retry counters in quarantine tableSnowflakeSnowflake
  • OutputEscalate over-budget rows as PagerDuty incidentPagerDutyPagerDuty

What it does

Quarantined rows aren't always permanently broken — a missing parent account gets created, a malformed field gets fixed upstream. This workflow periodically re-attempts every row sitting in your quarantine table, pushing it back into Salesforce. Rows that finally succeed are cleared; rows that have failed too many times get escalated so a human looks at them instead of looping forever.

When to use it

Use it alongside a reverse-ETL pipeline that quarantines bad rows. Schedule it hourly or nightly to drain the backlog automatically, so transient upstream fixes resolve without anyone manually re-running anything.

How it works

A schedule trigger reads all pending rows from the Snowflake quarantine table. Each row is re-pushed to Salesforce. A logic step inspects the result and increments a retry counter: successes are deleted from quarantine, failures have their attempt count bumped. Rows whose attempts exceed the configured budget are branched off and raised as a PagerDuty incident with the record id and last error, so they leave the automatic loop and get human ownership.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect SnowflakeWarehouses, queries, shares.
  2. 2
    Connect SalesforceAccounts, opportunities, cases.
  3. 3
    Connect PagerDutyIncidents, on-call, escalations.
  4. 4
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  5. 5
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  6. 6
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.