<@U04S8PLJWMT> I'm getting this error syncing fro...
# replication-ask-ai
a
@kapa.ai I'm getting this error syncing from a notion source. I've tried changing the number of concurrent workers in the source config to 1 and 2 instead of the default 3 and the same error occurs. 2026-07-01 145437 replication-orchestrator INFO failures: [ { "failureOrigin" : "source", "failureType" : "system_error", "internalMessage" : "Exhausted available request attempts. Exception: ConnectionError: ('Connection aborted.', ConnectionResetError(104, 'Connection reset by peer'))", "externalMessage" : "Exhausted available request attempts. Please see logs for more details. Exception: ConnectionError: ('Connection aborted.', ConnectionResetError(104, 'Connection reset by peer'))", "metadata" : { "attemptNumber" : 3, "jobId" : 102686, "from_trace_message" : true, "connector_command" : "read" }, "stacktrace" : "Traceback (most recent call last):\n File \"/usr/local/lib/python3.13/site-packages/airbyte_cdk/sources/streams/http/http_client.py\", line 292, in _send_with_retry\n response = backoff_handler(rate_limit_backoff_handler(user_backoff_handler))(\n request,\n ...<2 lines>...\n exit_on_rate_limit=exit_on_rate_limit,\n ) # type: ignore # mypy can't infer that backoff_handler wraps _send\n File \"/usr/local/lib/python3.13/site-packages/backoff/_sync.py\", line 105, in retry\n ret = target(*args, **kwargs)\n File \"/usr/local/lib/python3.13/site-packages/backoff/_sync.py\", line 105, in retry\n ret = target(*args, **kwargs)\n File \"/usr/local/lib/python3.13/site-packages/backoff/_sync.py\", line 105, in retry\n ret = target(*args, **kwargs)\n File \"/usr/local/lib/python3.13/site-packages/airbyte_cdk/sources/streams/http/http_client.py\", line 386, in _send\n self._handle_error_resolution(\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^\n response=response,\n ^^^^^^^^^^^^^^^^^^\n ...<3 lines>...\n exit_on_rate_limit=exit_on_rate_limit,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n )\n ^\n File \"/usr/local/lib/python3.13/site-packages/airbyte_cdk/sources/streams/http/http_client.py\", line 557, in _handle_error_resolution\n raise DefaultBackoffException(\n ...<4 lines>...\n )\nairbyte_cdk.sources.streams.http.exceptions.DefaultBackoffException: ConnectionError: ('Connection aborted.', ConnectionResetError(104, 'Connection reset by peer'))\n", "timestamp" : 1782930940216, "streamDescriptor" : { "name" : "comments" } }, { "failureOrigin" : "source", "failureType" : "system_error", "internalMessage" : "Exhausted available request attempts. Exception: ConnectionError: ('Connection aborted.', ConnectionResetError(104, 'Connection reset by peer'))", "externalMessage" : "Exhausted available request attempts. Please see logs for more details. Exception: ConnectionError: ('Connection aborted.', ConnectionResetError(104, 'Connection reset by peer'))", "metadata" : { "attemptNumber" : 3, "jobId" : 102686, "from_trace_message" : true, "connector_command" : "read" }, "stacktrace" : "Traceback (most recent call last):\n File \"/usr/local/lib/python3.13/site-packages/airbyte_cdk/sources/streams/http/http_client.py\", line 292, in _send_with_retry\n response = backoff_handler(rate_limit_backoff_handler(user_backoff_handler))(\n request,\n ...<2 lines>...\n exit_on_rate_limit=exit_on_rate_limit,\n ) # type: ignore # mypy can't infer that backoff_handler wraps _send\n File \"/usr/local/lib/python3.13/site-packages/backoff/_sync.py\", line 105, in retry\n ret = target(*args, **kwargs)\n File \"/usr/local/lib/python3.13/site-packages/backoff/_sync.py\", line 105, in retry\n ret = target(*args, **kwargs)\n File \"/usr/local/lib/python3.13/site-packages/backoff/_sync.py\", line 105, in retry\n ret = target(*args, **kwargs)\n File \"/usr/local/lib/python3.13/site-packages/airbyte_cdk/sources/streams/http/http_client.py\", line 386, in _send\n self._handle_error_resolution(\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^\n response=response,\n ^^^^^^^^^^^^^^^^^^\n ...<3 lines>...\n exit_on_rate_limit=exit_on_rate_limit,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n )\n ^\n File \"/usr/local/lib/python3.13/site-packages/airbyte_cdk/sources/streams/http/http_client.py\", line 557, in _handle_error_resolution\n raise DefaultBackoffException(\n ...<4 lines>...\n )\nairbyte_cdk.sources.streams.http.exceptions.DefaultBackoffException: ConnectionError: ('Connection aborted.', ConnectionResetError(104, 'Connection reset by peer'))\n", "timestamp" : 1782931841154, "streamDescriptor" : { "name" : "comments" } }, { "failureOrigin" : "source", "failureType" : "config_error", "internalMessage" : "Concurrent read failure", "externalMessage" : "During the sync, the following streams did not sync successfully: comments: AirbyteTracedException(\"Exhausted available request attempts. Exception: ConnectionError: ('Connection aborted.', ConnectionResetError(104, 'Connection reset by peer'))\")\ncomments: AirbyteTracedException(\"Exhausted available request attempts. Exception: ConnectionError: ('Connection aborted.', ConnectionResetError(104, 'Connection reset by peer'))\")", "metadata" : { "attemptNumber" : 3, "jobId" : 102686, "from_trace_message" : true, "connector_command" : "read" }, "stacktrace" : "Traceback (most recent call last):\n File \"/airbyte/integration_code/main.py\", line 4, in <module>\n run()\n ~~~^^\n File \"/airbyte/integration_code/source_declarative_manifest/run.py\", line 307, in run\n handle_command(args)\n ~~~~~~~~~~~~~~^^^^^^\n File \"/airbyte/integration_code/source_declarative_manifest/run.py\", line 91, in handle_command\n handle_local_manifest_command(args)\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^\n File \"/airbyte/integration_code/source_declarative_manifest/run.py\", line 129, in handle_local_manifest_command\n launch(\n ~~~~~~^\n source=source,\n ^^^^^^^^^^^^^^\n args=args,\n ^^^^^^^^^^\n )\n ^\n File \"/usr/local/lib/python3.13/site-packages/airbyte_cdk/entrypoint.py\", line 397, in launch\n for message in source_entrypoint.run(parsed_args):\n ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^\n File \"/usr/local/lib/python3.13/site-packages/airbyte_cdk/entrypoint.py\", line 209, in run\n yield from map(\n ...<2 lines>...\n )\n File \"/usr/local/lib/python3.13/site-packages/airbyte_cdk/entrypoint.py\", line 282, in read\n for message in self.source.read(self.logger, config, catalog, state):\n ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/usr/local/lib/python3.13/site-packages/airbyte_cdk/sources/declarative/concurrent_declarative_source.py\", line 388, in read\n yield from self._concurrent_source.read(selected_concurrent_streams)\n File \"/usr/local/lib/python3.13/site-packages/airbyte_cdk/sources/concurrent_source/concurrent_source.py\", line 131, in read\n yield from self._consume_from_queue(\n ...<2 lines>...\n )\n File \"/usr/local/lib/python3.13/site-packages/airbyte_cdk/sources/concurrent_source/concurrent_source.py\", line 159, in _consume_from_queue\n if queue.empty() and concurrent_stream_processor.is_done():\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^\n File \"/usr/local/lib/python3.13/site-packages/airbyte_cdk/sources/concurrent_source/concurrent_read_processor.py\", line 416, in is_done\n raise AirbyteTracedException(\n ...<3 lines>...\n )\nairbyte_cdk.utils.traced_exception.AirbyteTracedException: During the sync, the following streams did not sync successfully: comments: AirbyteTracedException(\"Exhausted available request attempts. Exception: ConnectionError: ('Connection aborted.', ConnectionResetError(104, 'Connection reset by peer'))\")\ncomments: AirbyteTracedException(\"Exhausted available request attempts. Exception: ConnectionError: ('Connection aborted.', ConnectionResetError(104, 'Connection reset by peer'))\")\n", "timestamp" : 1782932053454 }, { "failureOrigin" : "source", "internalMessage" : "Source process exited with non-zero exit code 1", "externalMessage" : "Something went wrong within the source connector", "metadata" : { "attemptNumber" : 3, "jobId" : 102686, "connector_command" : "read" }, "stacktrace" : "io.airbyte.workers.internal.exception.SourceException: Source process exited with non-zero exit code 1\n\tat io.airbyte.workers.general.BufferedReplicationWorker.readFromSource(BufferedReplicationWorker.java:365)\n\tat io.airbyte.workers.general.BufferedReplicationWorker.lambda$runAsyncWithHeartbeatCheck$3(BufferedReplicationWorker.java:223)\n\tat java.base/java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1804)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)\n\tat java.base/java.lang.Thread.run(Thread.java:1583)\n", "timestamp" : 1782932053985 } ]
k
Notion Source: comments Stream Connection Reset Error The error you're seeing is a
ConnectionResetError(104, 'Connection reset by peer')
on the
comments
stream — this is a network-level connection drop, not a rate limit (HTTP 429) issue, which is why reducing
num_workers
hasn't helped. What's happening The connector exhausted all retry attempts after the Notion API (or an intermediate network layer) forcibly closed the TCP connection mid-request. This is distinct from a rate limit response — it's the connection being aborted before a proper HTTP response is received. What to try 1. Retry the sync — transient network issues (connection resets) can be intermittent. The error occurred on attempt 3, suggesting it has already retried multiple times, but a fresh sync attempt at a different time may succeed if the issue is on Notion's side. 2. Disable the
comments
stream temporarily
— if the
comments
stream is not critical, you can deselect it in the connection's Schema tab to allow the rest of your streams (
pages
,
users
,
data_sources
,
blocks
) to sync successfully while you investigate. 3. Check Notion's API status — a persistent
Connection reset by peer
error can indicate instability on Notion's API side. Check Notion's status page for any ongoing incidents. 4. Reduce
num_workers
further or try
num_workers=1
— the
num_workers
setting ranges from 1–10 with a default of 3. [Notion connector docs] While you've already tried 1 and 2, it's worth confirming the setting was saved and applied correctly, as concurrent requests can sometimes stress connections even at low concurrency. Important note on the error classification The final failure entry in your logs is classified as
config_error
("Concurrent read failure"), but this is a wrapper around the underlying
system_error
(connection reset). The root cause is the network connection being dropped, not a misconfiguration on your end. The knowledge sources do not contain specific guidance for this exact
ConnectionResetError
scenario with the Notion connector, so if the above steps don't resolve it, I'd recommend opening a support ticket with Airbyte and sharing these logs, as this may require investigation into whether there's a connector-level bug with how the
comments
stream handles connection failures. 👍 0 button 👎 0 button ℹ️ Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.