Jitendra Singh Bisht
06/08/2026, 12:20 PMError: Provider produced invalid plan
Provider "<http://registry.terraform.io/airbytehq/airbyte|registry.terraform.io/airbytehq/airbyte>" planned an invalid value
for airbyte_connection.oracle_fusion_fscm_databricks_sync.configurations.streams:
count in plan (cty.UnknownVal(cty.Number)) disagrees with count in config
(cty.NumberIntVal(5)).
This is a bug in the provider, which should be reported in the provider's
own issue tracker.
Provider version: airbytehq/airbyte ~> 0.13.0
Terraform version: hashicorp/terraform v1.x
What we're doing:
resource "airbyte_connection" "oracle_fusion_fscm_databricks_sync" {
name = "DIP-OracleFusionFSCM-Databricks-Sync"
source_id = airbyte_source_custom.oracle_fusion_fscm_source.source_id
destination_id = airbyte_destination_custom.oracle_fusion_fscm_destination.destination_id
configurations = {
streams = [
{ name = "stream_1", sync_mode = "incremental_deduped_history", ... },
{ name = "stream_2", sync_mode = "incremental_deduped_history", ... },
{ name = "stream_3", sync_mode = "incremental_deduped_history", ... },
{ name = "stream_4", sync_mode = "incremental_deduped_history", ... },
{ name = "stream_5", sync_mode = "incremental_deduped_history", ... },
]
}
}
Observations:
1. β
Works fine with 1 stream in the connection
2. β Fails with 5 streams β count in plan (UnknownVal) disagrees with count in config (5)
3. β
Works fine with 5 streams if source already exists in state (i.e. only connection is being created)
4. The issue only occurs on first-time creation when source_id is (known after apply)
Root cause hypothesis: When source_id is unknown at plan time, the provider tries to validate the stream count against the source's catalog but gets UnknownVal β this only manifests with N>1 streams.
Questions:
1. Is this a known issue in airbytehq/airbyte provider v0.13.0?
2. Is there a workaround to create source + connection with multiple streams in a single apply?Amal Mokhtar
06/10/2026, 10:38 AMsource-postgres:3.7.2 and hoping someone has seen this.
Problem: After a full refresh completes successfully, the very next incremental CDC sync loads 0 records, and this repeats every time.
Root cause (probably): The full refresh does the ctid snapshot correctly but saves the initial WAL LSN as its final state (the LSN at snapshot start, not at snapshot end). So on the next incremental run, confirmed_flush_lsn == saved_offset_lsn, Debezium sees itself as caught up, skips the snapshot, streams only heartbeats, and exits with 0 records. All WAL changes between snapshot start and the next sync run are lost.
This seems related to flush.lsn.source = false, the slot LSN never advances during the ctid load so the saved state never moves forward.
Question: Is this a known bug in 3.7.x? Is there a patched version or a recommended workaround short of doing a manual refresh every day?
@kapa.aiWu Ricky
06/12/2026, 1:20 AMNevo
06/14/2026, 6:15 AM'GET' request to '<https://api-m.paypal.com/v1/reporting/transactions?fields=all&page_size=500&start_date=2026-06-11T21%3A49%3A26Z&end_date=2026-06-12T00%3A33%3A17Z>' failed with status code '404' and error message: 'Data for the given start date is not available.'. Request (body): 'None'. Response (body): '{'name': 'INVALID_REQUEST', 'message': 'Data for the given start date is not available.', 'debug_id'...
Connector version: 2.6.31
Does anyone else encountered this? any suggestions?
@kapa.aiDamir
06/14/2026, 7:20 PMNisheet Das
06/23/2026, 9:18 PM2026-06-22 21:36:18 destination ERROR com.google.cloud.bigquery.BigQueryException: 400 Bad Request
2026-06-22 21:36:18 destination ERROR PUT <https://bigquery.googleapis.com/upload/bigquery/v2/projects/XXXXXXXXXXXXXXXXXX/jobs?uploadType=resumable&upload_id=XXXXXXXXXXXXXXXXXX>
2026-06-22 21:36:18 destination ERROR {
2026-06-22 21:36:18 destination ERROR "error": {
2026-06-22 21:36:18 destination ERROR "code": 400,
2026-06-22 21:36:18 destination ERROR "message": "Request had invalid euc header.",
2026-06-22 21:36:18 destination ERROR "errors": [
2026-06-22 21:36:18 destination ERROR {
2026-06-22 21:36:18 destination ERROR "message": "Request had invalid euc header.",
2026-06-22 21:36:18 destination ERROR "domain":"**********",
2026-06-22 21:36:18 destination ERROR "reason": "invalid"
2026-06-22 21:36:18 destination ERROR }
2026-06-22 21:36:18 destination ERROR ],
2026-06-22 21:36:18 destination ERROR "status": "INVALID_ARGUMENT"
2026-06-22 21:36:18 destination ERROR }
2026-06-22 21:36:18 destination ERROR }
Anyone else faced this before? Any workarounds?Assaf Fraindlich
06/24/2026, 6:47 AMFabrizio Spini
06/24/2026, 12:38 PMsourceCatalogId even on empty schema diff
Setup
β’ Airbyte 2.1.0, self-hosted on GKE
β’ source-mysql:3.51.5 (CDC mode, invalid_cdc_cursor_position_behavior: Fail sync)
β’ destination-bigquery:3.0.16
β’ nonBreakingChangesPreference: ignore
What happens
Every night at midnight UTC a scheduled discover runs. When it completes, ConnectionsHandler.applySchemaChange() updates the connection's sourceCatalogId β even when the schema diff is empty. New syncs launched under the new catalogId find no associated CDC state and fall back to an old saved binlog position.
The result is a silent, growing backlog: each sync reprocesses an ever-increasing number of records from the old binlog position. In our case this grew from ~2M to ~55M records over 2 days before BigQuery started returning 500s and the sync loop became permanent.
Why nonBreakingChangesPreference: ignore doesn't help
This setting controls stream-level propagation, but applySchemaChange() still updates sourceCatalogId on every discover completion regardless. The CDC state orphaning happens upstream of that logic.
Impact
β’ Pipeline silently accumulates backlog for days without alerting
β’ Failure only surfaces when destination (BigQuery) starts rejecting large batch inserts
β’ By then the binlog position in the CDC state may no longer exist (rotated out)
Question
Is this a known issue? Is there a way to prevent sourceCatalogId from being updated when there's no actual schema change? We couldn't find a config option that controls this behavior.
Current mitigation
We deployed a Cloud Run job (hourly) that queries sync stats and alerts on Slack if any CDC connection shows 5 consecutive runs with monotonically increasing records emitted where the latest run processes >2x the records of the oldest in the window. This lets us catch the backlog early before volumes become critical.
Thanks πranjeetkumar.singh
06/26/2026, 9:46 PMcontact966
06/28/2026, 8:45 AMairbyte-abctl-airbyte-secrets and confirmed present in the server and workload-launcher pods.
Observed behavior: When creating a destination connector (postgreSQL) and running a check, the ephemeral pod fails with:
SecretCoordinateException: That secret was not found in the store!
Coordinate: airbyte_workspace_00000000-..._secret_<uuid>_v1
Vault returns a 403 on read. The secret was never written to Vault in the first place β the server doesn't seem to write connector secrets to Vault when saving a connection.
Question: Is writing connector secrets to Vault actually supported in Airbyte Core 2.x? The documentation is unclear on this point.
Thanks!Manish Pandey
06/30/2026, 10:03 AMgacosta
07/01/2026, 7:04 PMkodanda ramudu
07/02/2026, 5:14 PMRakim
07/03/2026, 11:20 AM--low-resource-mode toggle breaks install, MinIO missing
Environment:
β’ Airbyte: 2.1.0 (self-hosted, single-node kind on EC2)
β’ abctl: v0.30.4
β’ Helm chart: V2 (default)
What happened:
Originally installed without --low-resource-mode, then re-ran with the flag. This triggered a known Helm patch ordering bug (duplicate ..._REQUEST entries with both value:0 and valueFrom in the configmap patch list). Now every abctl local install β with or without the flag β fails at ~23s before pods start.
Error:
unable to install helm: failed to create patch: The order in patch list:
[map[name:CHECK_JOB_MAIN_CONTAINER_CPU_REQUEST value:0] ... map[name:CHECK_JOB_MAIN_CONTAINER_MEMORY_REQUEST valueFrom:...]]
doesn't match $setElementOrder list: [...]
What's been tried:
β’ Re-running install with/without --low-resource-mode β same error
β’ Deleting the cron deployment β fails earlier at the configmap patch
β’ --chart-version=1.7.2 β not viable, V1 chart is incompatible with Airbyte 2.1.0
Ask:
β’ Is there a non-destructive way to resolve the configmap patch conflict on Helm chart V2 / Airbyte 2.1.0?Leonardo MuΓ±oz M.
07/03/2026, 8:57 PMincremental_dependency: true on parent-child streams, the child stream drops its cursor context after the first sync, forcing the parent stream into an unexpected full refresh loop on subsequent syncs (making them 100xβ1000x slower).
I just updated the issue with a comprehensive root-cause analysis (assisted by GitHub Copilot and verified against the latest Concurrent CDK source code). I also provided:
1. A functional connector-level workaround using custom components (StateMigration) that anyone can apply today.
2. The exact lines in the CDK core (substream_partition_router.py) where the context is being lost.
Here is the link to the issue: github.com/airbytehq/airbyte/issues/61567
Could you please help review the proposed architectural fix or provide recommendations to get this merged? Thanks!maria.sanzbe
07/06/2026, 4:28 PM// HttpError
{
"i18nKey": "errors.http.internalServerError",
"i18nParams": {
"status": 500
},
"name": "HttpError",
"requestId": "(X)",
"request": {
"url": "/api/v1/source_definitions/list_for_workspace",
"method": "POST",
"headers": {
"Content-Type": "application/json"
},
"data": {
"workspaceId": "(x)"
}
},
"status": 500,
"response": {
"message": "Internal Server Error: Duplicate key (X) (attempted merging values (X) and (X))",
"exceptionClassName": "java.lang.IllegalStateException",
The UI shows me duplicated sources but when I query de airbyte db tables with this query it does not appear duplicated:
SELECT *
FROM actor
WHERE actor_type = 'source';
I am using the version 2.0.1-alpha-7e24df1. Anyone else had this issue?akhilesh.kumar178
07/15/2026, 10:38 AM_id column. The source table contains rows where _id is NULL, and Airbyte's dedup/normalization step could not process these β causing the sync to abort. I checked Postgres stores table and there was no _id column with null values. Airbyte source (postgres) setting was using update method as 'scan changes with user defined cursor'.
2. Switched to Incremental | Append β now seeing duplicate rows:
As a workaround we switched to Incremental|Append mode. Syncs now complete successfully, BUT we are seeing duplicate rows in Snowflake destination.
What's unusual: all duplicate rows for a given store have the exact same dateupdated value. The only difference between duplicate rows is _AIRBYTE_EXTRACTED_AT β spaced ~15 minutes apart (our sync frequency).
Example β 7 rows for same store in Snowflake, all identical data:
Idateupdated = 2026-07-14 12:33:17 _airbyte_extracted_at = 12:46 β first sync
dateupdated = 2026-07-14 12:33:17 _airbyte_extracted_at = 13:03 β duplicate
dateupdated = 2026-07-14 12:33:17 _airbyte_extracted_at = 13:17 β duplicate
dateupdated = 2026-07-14 12:33:17 _airbyte_extracted_at = 13:33 β duplicate
... and so on
This only affects a small number of stores (~16 out of 243K) at any given time. The affected stores change over time.
Question for community: What is causing Incremental|Append + UDC to replicate the same rows repeatedly with identical dateupdated? Is this a known behavior and is there a recommended fix short of switching to CDC?Barush Mendez
08/05/2026, 3:27 PMAndrew Kinnersley
08/10/2026, 9:49 AMguillermo.astolfi
08/10/2026, 1:16 PMYuki Kakegawa
08/11/2026, 10:13 PM'A')? It looks like the Debezium decoder in source-postgres:3.8.4 crashed on a PostgreSQL WAL Stream Abort message ('A') emitted, but this never happened to megabriel.goinden
08/21/2026, 8:13 PM1.34 β 1.35 upgrade, and Airbyte Helm chart 0.551.0 β 1.9.2 (big jump, I know π
). Since then, syncs never actually run.
Symptom: jobs sit at "Starting..." forever. No replication pod is ever created β watched kubectl get pods -n airbyte -w live while triggering a sync, nothing appears, across multiple attempts.
What I've ruled out so far:
β’ RBAC β airbyte-admin SA can create pods (kubectl auth can-i create pods --as=system:serviceaccount:airbyte:airbyte-admin β yes)
β’ DNS/networking between internal services β all fine
β’ kubectl get events -n airbyte β zero `FailedCreate`/`Forbidden`/rejections, ever
β’ workload-launcher β pod's healthy, only logging routine pod-sweeper cycles, nothing about the actual job
β’ workload-api-server β healthy, responds fine to other calls
The actual weird part: using tctl workflow show -w replication_<jobid>, the StartCommand activity completes successfully and returns a workload ID. But hitting that exact ID directly against workload-api-server:
GET /api/v1/workload/replication_<jobid>_...
β {"message":"Could not find workload with id: ..."}
So the worker's activity thinks it created the workload and gets an ID back β but the server has zero record of it. No errors anywhere in worker/workload-launcher/workload-api-server logs about this specific job β total silence.
Also noticed the chart's default images for `container-orchestrator`/`workload-init-container`/`connector-sidecar`/`async-profiler` are pinned to an alpha build (2.0.2-alpha-c905e75) rather than a stable tag β not sure if related, but seemed worth mentioning.
Has anyone seen `StartCommand`/`createWorkload` report success while the workload record never actually persists server-side? Any pointer on where that write might be dying between worker β workload-api-server would save my week πJitendra Singh Bisht
09/24/2026, 2:45 AMJustin Beasley
09/29/2026, 2:54 PMNevo
09/30/2026, 7:29 AMnext_page_token for pagination. This field was deprecated in the provider's API - developer.paypal.com/api/customer-disputes/v1/disputes-list
Increasing the page size so all records will fit in a single page is currently not supported (fixed at 50 per page).
Is there a plan for fixing this? any workaround until then? πYuki Kakegawa
10/05/2026, 4:48 PM3.8.5 β BigQuery, PostgreSQL 18.1 on Cloud SQL, After loading Data in the destination, initial_waiting_seconds=2400, and max_slot_wal_keep_size=3 TiB. We also have a working heartbeat-table upsert every 10 seconds.
β’ The connection alternates between empty syncs and large bursts. One job spent 40 minutes searching for its saved WAL position, received 238 heartbeat events, emitted no records, and ended with HEARTBEAT_NOT_PROGRESSING. The next job found the same position after 17 minutes and emitted 3.72M records, but committed zero state before the slot was invalidated.
β’ WAL is generated at approximately 173β190 GB/hour, while the decoded LSN advances at 507β545 GB/hour. However, restart_lsn barely advances, so retained WAL eventually exceeds 3 TiB.
Should long CDC jobs commit intermediate destination-acknowledged checkpoints? Is there a safe way to advance confirmed_flush_lsn during long jobs while retaining βAfter loadingβ safety? Could this be related to issue #70887, and is there a recommended patch or configuration?tarcisio.pacheco
10/15/2026, 8:11 PM0.59.1 to 2.3.0.
We rely heavily on the Declarative CDK and have dozens of custom connectors. Because of this scale, recreating each of them manually from scratch via the Connector Builder UI is completely unfeasible for our team.
Initially, we tried the straightforward approach: exporting the YAML manifest from the obsolete version and importing it directly into the new version's Connector Builder. However, this approach throws validation errors and fails to save the draft.
Since a simple UI import doesn't work for these legacy manifests, we are looking for suggestions on how to best handle this transition.
What is the officially recommended approach to migrate and deploy these legacy YAML manifests into v2.3.0?
Any guidance or documentation you could share would be hugely appreciated!
Thanks in advance.ajaya
10/26/2026, 11:44 AMinfo220
11/02/2026, 3:13 PMNamuuna Baterdene
11/05/2026, 11:10 PM