Thomas Puissant
05/04/2026, 9:49 AMkapa.ai
05/04/2026, 9:49 AMThomas Puissant
05/04/2026, 9:49 AMBBT_PRD_Tracker et la destination Snowflake sur la connexion AGG__PETREL_TRACKER_V01 → Snowflake PROD. Certaines lignes présentes côté source n’étaient pas remontées dans Snowflake, ce qui laissait penser que le CDC n’était pas correctement exécuté.
Nous avons d’abord lancé un Clear data + Refresh / full refresh, ce qui a permis de réaligner les données côté Snowflake. En revanche, les trois synchronisations planifiées suivantes n’ont remonté aucune nouvelle ligne, malgré des changements attendus côté source.
Après analyse du state Airbyte, nous avons constaté une incohérence : le mssql_cdc_offset contenait bien un LSN, mais le mssql_db_history indiquait encore un snapshot en cours :
"snapshot": "INITIAL",
"snapshot_completed": false
Nous avons donc corrigé le state via l’API Airbyte :
POST /api/v1/state/create_or_update
En mettant à jour l’état CDC pour indiquer que le snapshot était bien terminé :
"snapshot": "COMPLETED",
"snapshot_completed": true
Puis nous avons relancé une full sync. Celle-ci s’est terminée correctement.
La synchronisation planifiée du lendemain matin s’est ensuite bien exécutée en mode CDC et a remonté uniquement les nouvelles lignes attendues.
Conclusion : le problème venait très probablement d’un state CDC / Debezium incohérent après le clear data / refresh. Le snapshot avait été effectué côté données, mais Airbyte conservait un state indiquant que le snapshot n’était pas terminé, ce qui empêchait les synchronisations CDC suivantes de repartir correctement.
[15 h 29]
j'aimerai comprendre pourquoi ca arriveThomas Puissant
05/04/2026, 9:56 AMBBT_PRD_Tracker et la destination Snowflake sur la connexion AGG__PETREL_TRACKER_V01 → Snowflake PROD. Certaines lignes présentes côté source n’étaient pas remontées dans Snowflake, ce qui laissait penser que le CDC n’était pas correctement exécuté.
Nous avons d’abord lancé un Clear data + Refresh / full refresh, ce qui a permis de réaligner les données côté Snowflake. En revanche, les trois synchronisations planifiées suivantes n’ont remonté aucune nouvelle ligne, malgré des changements attendus côté source.
Après analyse du state Airbyte, nous avons constaté une incohérence : le mssql_cdc_offset contenait bien un LSN, mais le mssql_db_history indiquait encore un snapshot en cours :
"snapshot": "INITIAL",
"snapshot_completed": false
Nous avons donc corrigé le state via l’API Airbyte :
POST /api/v1/state/create_or_update
En mettant à jour l’état CDC pour indiquer que le snapshot était bien terminé :
"snapshot": "COMPLETED",
"snapshot_completed": true
Puis nous avons relancé une full sync. Celle-ci s’est terminée correctement.
La synchronisation planifiée du lendemain matin s’est ensuite bien exécutée en mode CDC et a remonté uniquement les nouvelles lignes attendues.
Conclusion : le problème venait très probablement d’un state CDC / Debezium incohérent après le clear data / refresh. Le snapshot avait été effectué côté données, mais Airbyte conservait un state indiquant que le snapshot n’était pas terminé, ce qui empêchait les synchronisations CDC suivantes de repartir correctement.
[15 h 29]
j'aimerai comprendre pourquoi ca arrivekapa.ai
05/04/2026, 9:56 AMCOMPLETED dans le state
Le problème documenté est que le connecteur peut commettre (confirmer) un LSN différent de celui qui sera ensuite sauvegardé dans le state. Cela crée une incohérence entre le LSN confirmé côté serveur et le LSN enregistré dans l'état Airbyte. [Wrong LSN Issue]
2. Bug spécifique au "cold start" MSSQL Un bug a été identifié dans les versions récentes du connecteur MSSQL (4.3.x) : lors d'un cold start (nouvelle connexion ou après un reset), la clé d'offset synthétique générée par le CDK ne correspond pas à celle que Debezium construit en interne. Cela peut provoquer un état où Debezium ne retrouve pas ses offsets et reste bloqué en mode snapshot. [MSSQL Cold Start Fix]
3. Conséquence : le snapshot reste marqué "INITIAL" Quand cette incohérence survient, le state Debezium conserve "snapshot": "INITIAL" et "snapshot_completed": false, ce qui signifie que les syncs suivants pensent qu'un snapshot est encore en cours et ne passent jamais en mode CDC incrémental — d'où l'absence de nouvelles lignes remontées. [Sync Fails After CDC Cleanup]
4. Boucle infinie possible Dans certains cas, si le comportement configuré est "Re-sync data" (au lieu de "Fail sync"), le connecteur peut entrer dans une boucle infinie de resyncs, chaque nouveau LSN expirant avant que la synchronisation suivante ne puisse s'exécuter. [LSN Validation Regression]
En résumé Votre diagnostic est correct : après le Clear Data + Refresh, le snapshot des données a bien été effectué, mais le state Debezium n'a pas été mis à jour pour refléter que le snapshot était terminé. La correction manuelle via l'API ("snapshot": "COMPLETED", "snapshot_completed": true) a permis de remettre le connecteur dans un état cohérent.
Ce type de bug est lié à la gestion des offsets et de l'état Debezium dans le CDK Airbyte, et a été signalé sur plusieurs versions du connecteur MSSQL. Il est recommandé de vérifier que vous utilisez une version récente du connecteur source MSSQL (≥ 4.3.5) qui inclut des correctifs pour ces problèmes de cold start. [MSSQL Cold Start Fix] 👍 0 button 👎 0 button ℹ️ Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.Thomas Puissant
05/04/2026, 9:57 AMkapa.ai
05/04/2026, 9:58 AMsource-mssql dans la liste — Airbyte affiche deux versions : la version actuellement utilisée et la dernière version disponible.
3. Cliquez sur Change pour mettre à jour votre version OSS vers la dernière version disponible.
[Update Local Connector Image]
Si la 4.4.0 n'apparaît toujours pas Il est possible que votre instance Airbyte elle-même ne soit pas à jour. Les sources de connaissance indiquent qu'*Airbyte recommande d'utiliser la dernière version de la plateforme Airbyte* lors de la mise à jour des connecteurs. Une version ancienne de la plateforme peut ne pas avoir connaissance des dernières versions de connecteurs disponibles. [Self-Managed Updates]
En résumé : vérifiez d'abord la version de votre plateforme Airbyte, puis tentez la mise à jour de l'image du connecteur via les paramètres. Les sources disponibles ne détaillent pas précisément pourquoi une version spécifique (4.4.0) n'apparaîtrait pas dans l'interface, donc je ne peux pas vous donner une cause exacte au-delà de ces éléments. 👍 0 button 👎 0 button ℹ️ Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.Thomas Puissant
05/04/2026, 10:08 AMkapa.ai
05/04/2026, 10:08 AMhelm upgrade airbyte airbyte/airbyte \
--namespace airbyte \
--values ./values.yaml \
--version 2.x.x # remplacez par la dernière version disponible
Vous pouvez consulter les versions disponibles sur ArtifactHub et les notes de version sur la page des release notes Airbyte. [Upgrading Airbyte]
Point important Lors d'une mise à jour de la plateforme Airbyte, les connecteurs que vous utilisez activement ne sont pas mis à jour automatiquement (pour éviter de perturber vos syncs en cours). Vous devrez ensuite mettre à jour manuellement le connecteur MSSQL depuis les paramètres une fois la plateforme mise à jour. [Upgrading Airbyte]
En résumé : la mise à jour de la plateforme Airbyte devrait vous donner accès aux versions de connecteurs plus récentes, dont la 4.4.0 du connecteur MSSQL. 👍 0 button 👎 0 button ℹ️ Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.