Zachary Haupin
03/17/2026, 12:07 AMkapa.ai
03/17/2026, 12:07 AMSaved offset is before Replication slot's confirmed_flush_lsn, Airbyte will trigger sync from scratch
This happens when the WAL segments needed for the incremental sync have already been removed by Postgres (e.g., due to high write volume or infrequent syncing). [Postgres troubleshooting] Controlling the Behavior The Invalid CDC Position Behavior (Advanced setting) controls what happens when the saved offset is invalid:
• Fail sync: The sync fails with an error message.
• Re-sync data: Airbyte triggers a full refresh from scratch silently.
[CDC position behavior] General Resumability Airbyte is a deliver at-least-once system — it will retry and may re-deliver records already sent. For CDC streams specifically, resumability depends on the WAL offset still being available in Postgres. If you want to avoid duplicate records at the destination, use a sync mode that includes deduplication. [Resumability docs]
In summary: For CDC, Airbyte attempts to resume from the last committed WAL offset, but will fall back to a full re-sync if that offset is no longer available in the Postgres replication slot. 👍 0 button 👎 0 button ℹ️ Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.Zachary Haupin
03/17/2026, 12:08 AMkapa.ai
03/17/2026, 12:08 AMSYNC_JOB_RETRIES_COMPLETE_FAILURES_MAX_SUCCESSIVE – Max successive attempts where no data was synchronized
• SYNC_JOB_RETRIES_COMPLETE_FAILURES_MAX_TOTAL – Max total attempts where no data was synchronized
• SYNC_JOB_RETRIES_PARTIAL_FAILURES_MAX_TOTAL – Max total attempts where some data was synchronized
By default, Airbyte allows:
• 5 successive attempts with no data synced
• 10 total attempts with no data synced
• 20 total attempts with some data synced
[Configuring Airbyte Jobs] [Jobs & Retries] 2. Connector-Level HTTP Retries (Config-Based Connectors) If you're building or modifying a connector using the YAML/config-based framework, you can increase the HTTP request retry count via the error_handler in the `Requester`:
requester:
error_handler:
max_retries: 10 # default is 5
[Error Handling YAML] Note: For Airbyte Cloud, the platform-level retry environment variables are not user-configurable. The knowledge sources indicate that connection-level or workspace-level retry controls are a requested feature but not yet available as a built-in option. 👍 0 button 👎 0 button ℹ️ Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.Zachary Haupin
03/17/2026, 3:16 PMkapa.ai
03/17/2026, 3:16 PMSYNC_JOB_RETRIES_COMPLETE_FAILURES_BACKOFF_MIN_INTERVAL_S – Minimum backoff interval in seconds between failed attempts where no data was synchronized
• SYNC_JOB_RETRIES_COMPLETE_FAILURES_BACKOFF_MAX_INTERVAL_S – Maximum backoff interval in seconds
• SYNC_JOB_RETRIES_COMPLETE_FAILURES_BACKOFF_BASE – Exponential base of the backoff interval
By default, Airbyte backs off with:
• 10 seconds after the 1st complete failure
• 30 seconds after the 2nd
• 90 seconds after the 3rd
• 4 minutes 30 seconds after the 4th
[Configuring Airbyte Jobs] [Jobs & Retries] 2. Connector-Level HTTP Request Backoff (Config-Based Connectors) For HTTP request retries within a connector, backoff is configured in the connector's YAML via the `error_handler`'s backoff_strategies. The supported strategies are:
• ExponentialBackoffStrategy – Default; uses a factor (default: 5) with interval factor * 2^attempt_count
• ConstantBackoffStrategy – Fixed wait via backoff_time_in_seconds
• WaitTimeFromHeader – Reads wait time from a response header
• WaitUntilTimeFromHeader – Waits until a time specified in a response header
[Error Handling YAML] [Connector Builder Error Handling] 👍 0 button 👎 0 button ℹ️ Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.