Skip to content

fix: Disable CDC checkpointing using a flag - #24275

Merged
Sergio Ropero (sergio-ropero) merged 6 commits into
masterfrom
sergio/disable-cdc-checkpointing
Mar 21, 2023
Merged

fix: Disable CDC checkpointing using a flag#24275
Sergio Ropero (sergio-ropero) merged 6 commits into
masterfrom
sergio/disable-cdc-checkpointing

Conversation

@sergio-ropero

@sergio-ropero Sergio Ropero (sergio-ropero) commented Mar 21, 2023

Copy link
Copy Markdown
Contributor

What

There is an issue when we try to read the offset file at the same time Debezium is writing into it, making syncs to fail.

How

We disable CDC checkpointing using a flag until we finished the investigation with reading Offset file during syncs.
Also, with this solution, it can be enabled per each connector individually, so only one connector will be impacted at the time.

Test

Performed the following tests:

  • CDC Sync from scratch: 1M records loaded
  • 2nd CDC Sync: No records (no changes)
  • Reset stream: Clean all statuses
  • CDC Sync again: 1M records loaded

See image below:
Screenshot 2023-03-21 at 11 11 47

@sergio-ropero

Sergio Ropero (sergio-ropero) commented Mar 21, 2023

Copy link
Copy Markdown
Contributor Author

/test connector=connectors/source-mysql

🕑 connectors/source-mysql https://github.com/airbytehq/airbyte/actions/runs/4477785799
✅ connectors/source-mysql https://github.com/airbytehq/airbyte/actions/runs/4477785799
No Python unittests run

Build Passed

Test summary info:

=========================== short test summary info ============================
SKIPPED [1] ../usr/local/lib/python3.9/site-packages/connector_acceptance_test/plugin.py:63: Skipping TestConnection.test_check: not found in the config.
SKIPPED [1] ../usr/local/lib/python3.9/site-packages/connector_acceptance_test/plugin.py:63: Skipping TestDiscovery.test_discover: not found in the config.
SKIPPED [1] ../usr/local/lib/python3.9/site-packages/connector_acceptance_test/plugin.py:63: Skipping TestBasicRead.test_read: not found in the config.
SKIPPED [1] ../usr/local/lib/python3.9/site-packages/connector_acceptance_test/plugin.py:63: Skipping TestFullRefresh.test_sequential_reads: not found in the config.
SKIPPED [1] ../usr/local/lib/python3.9/site-packages/connector_acceptance_test/plugin.py:63: Skipping TestIncremental.test_two_sequential_reads: not found in the config.
SKIPPED [1] ../usr/local/lib/python3.9/site-packages/connector_acceptance_test/tests/test_core.py:100: The previous and actual specifications are identical.
================= 19 passed, 6 skipped, 27 warnings in 16.71s ==================

@sergio-ropero

Sergio Ropero (sergio-ropero) commented Mar 21, 2023

Copy link
Copy Markdown
Contributor Author

/test connector=connectors/source-mssql

🕑 connectors/source-mssql https://github.com/airbytehq/airbyte/actions/runs/4477786808
✅ connectors/source-mssql https://github.com/airbytehq/airbyte/actions/runs/4477786808
No Python unittests run

Build Passed

Test summary info:

=========================== short test summary info ============================
SKIPPED [1] ../usr/local/lib/python3.9/site-packages/connector_acceptance_test/plugin.py:63: Skipping TestConnection.test_check: not found in the config.
SKIPPED [1] ../usr/local/lib/python3.9/site-packages/connector_acceptance_test/plugin.py:63: Skipping TestDiscovery.test_discover: not found in the config.
SKIPPED [1] ../usr/local/lib/python3.9/site-packages/connector_acceptance_test/plugin.py:63: Skipping TestBasicRead.test_read: not found in the config.
SKIPPED [1] ../usr/local/lib/python3.9/site-packages/connector_acceptance_test/plugin.py:63: Skipping TestFullRefresh.test_sequential_reads: not found in the config.
SKIPPED [1] ../usr/local/lib/python3.9/site-packages/connector_acceptance_test/plugin.py:63: Skipping TestIncremental.test_two_sequential_reads: not found in the config.
SKIPPED [1] ../usr/local/lib/python3.9/site-packages/connector_acceptance_test/tests/test_core.py:100: The previous and actual specifications are identical.
================= 19 passed, 6 skipped, 27 warnings in 17.45s ==================

@sergio-ropero

Sergio Ropero (sergio-ropero) commented Mar 21, 2023

Copy link
Copy Markdown
Contributor Author

/test connector=connectors/source-postgres

🕑 connectors/source-postgres https://github.com/airbytehq/airbyte/actions/runs/4477787846
✅ connectors/source-postgres https://github.com/airbytehq/airbyte/actions/runs/4477787846
No Python unittests run

Build Passed

Test summary info:

=========================== short test summary info ============================
SKIPPED [1] ../usr/local/lib/python3.9/site-packages/connector_acceptance_test/plugin.py:63: Skipping TestIncremental.test_two_sequential_reads: not found in the config.
SKIPPED [2] ../usr/local/lib/python3.9/site-packages/connector_acceptance_test/tests/test_core.py:100: The previous and actual specifications are identical.
SKIPPED [2] ../usr/local/lib/python3.9/site-packages/connector_acceptance_test/tests/test_core.py:509: The previous and actual discovered catalogs are identical.
=================== 62 passed, 5 skipped in 81.83s (0:01:21) ===================

@github-actions

github-actions Bot commented Mar 21, 2023

Copy link
Copy Markdown
Contributor

Affected Connector Report

NOTE ⚠️ Changes in this PR affect the following connectors. Make sure to do the following as needed:

  • Run integration tests
  • Bump connector or module version
  • Add changelog
  • Publish the new version

✅ Sources (8)

Connector Version Changelog Publish
source-alloydb 2.0.3
source-alloydb-strict-encrypt 2.0.3 🔵
(ignored)
🔵
(ignored)
source-mssql 1.0.4
source-mssql-strict-encrypt 1.0.4 🔵
(ignored)
🔵
(ignored)
source-mysql 2.0.5
source-mysql-strict-encrypt 2.0.5 🔵
(ignored)
🔵
(ignored)
source-postgres 2.0.4
source-postgres-strict-encrypt 2.0.4 🔵
(ignored)
🔵
(ignored)
  • See "Actionable Items" below for how to resolve warnings and errors.

✅ Destinations (0)

Connector Version Changelog Publish
  • See "Actionable Items" below for how to resolve warnings and errors.

✅ Other Modules (0)

Actionable Items

(click to expand)

Category Status Actionable Item
Version
mismatch
The version of the connector is different from its normal variant. Please bump the version of the connector.

doc not found
The connector does not seem to have a documentation file. This can be normal (e.g. basic connector like source-jdbc is not published or documented). Please double-check to make sure that it is not a bug.
Changelog
doc not found
The connector does not seem to have a documentation file. This can be normal (e.g. basic connector like source-jdbc is not published or documented). Please double-check to make sure that it is not a bug.

changelog missing
There is no chnagelog for the current version of the connector. If you are the author of the current version, please add a changelog.
Publish
not in seed
The connector is not in the seed file (e.g. source_definitions.yaml), so its publication status cannot be checked. This can be normal (e.g. some connectors are cloud-specific, and only listed in the cloud seed file). Please double-check to make sure that it is not a bug.

diff seed version
The connector exists in the seed file, but the latest version is not listed there. This usually means that the latest version is not published. Please use the /publish command to publish the latest version.

@sergio-ropero

Sergio Ropero (sergio-ropero) commented Mar 21, 2023

Copy link
Copy Markdown
Contributor Author

/test connector=connectors/source-postgres-strict-encrypt

🕑 connectors/source-postgres-strict-encrypt https://github.com/airbytehq/airbyte/actions/runs/4478199790
✅ connectors/source-postgres-strict-encrypt https://github.com/airbytehq/airbyte/actions/runs/4478199790
No Python unittests run

Build Passed

Test summary info:

All Passed

@sergio-ropero

Sergio Ropero (sergio-ropero) commented Mar 21, 2023

Copy link
Copy Markdown
Contributor Author

/test connector=connectors/source-mysql-strict-encrypt

🕑 connectors/source-mysql-strict-encrypt https://github.com/airbytehq/airbyte/actions/runs/4478201109
✅ connectors/source-mysql-strict-encrypt https://github.com/airbytehq/airbyte/actions/runs/4478201109
No Python unittests run

Build Passed

Test summary info:

All Passed

@sergio-ropero

Sergio Ropero (sergio-ropero) commented Mar 21, 2023

Copy link
Copy Markdown
Contributor Author

/test connector=connectors/source-mssql-strict-encrypt

🕑 connectors/source-mssql-strict-encrypt https://github.com/airbytehq/airbyte/actions/runs/4478202777
✅ connectors/source-mssql-strict-encrypt https://github.com/airbytehq/airbyte/actions/runs/4478202777
No Python unittests run

Build Passed

Test summary info:

All Passed

@sergio-ropero

Sergio Ropero (sergio-ropero) commented Mar 21, 2023

Copy link
Copy Markdown
Contributor Author

/test connector=connectors/source-alloydb

🕑 connectors/source-alloydb https://github.com/airbytehq/airbyte/actions/runs/4478271974
✅ connectors/source-alloydb https://github.com/airbytehq/airbyte/actions/runs/4478271974
No Python unittests run

Build Passed

Test summary info:

All Passed

@sergio-ropero

Sergio Ropero (sergio-ropero) commented Mar 21, 2023

Copy link
Copy Markdown
Contributor Author

/test connector=connectors/source-alloydb-strict-encrypt

🕑 connectors/source-alloydb-strict-encrypt https://github.com/airbytehq/airbyte/actions/runs/4478272942
✅ connectors/source-alloydb-strict-encrypt https://github.com/airbytehq/airbyte/actions/runs/4478272942
No Python unittests run

Build Passed

Test summary info:

All Passed

@sergio-ropero

Sergio Ropero (sergio-ropero) commented Mar 21, 2023

Copy link
Copy Markdown
Contributor Author

/publish connector=connectors/source-alloydb

🕑 Publishing the following connectors:
connectors/source-alloydb
https://github.com/airbytehq/airbyte/actions/runs/4478477368


Connector Did it publish? Were definitions generated?
connectors/source-alloydb

if you have connectors that successfully published but failed definition generation, follow step 4 here ▶️

@sergio-ropero

Sergio Ropero (sergio-ropero) commented Mar 21, 2023

Copy link
Copy Markdown
Contributor Author

/publish connector=connectors/source-mysql

🕑 Publishing the following connectors:
connectors/source-mysql
https://github.com/airbytehq/airbyte/actions/runs/4478478589


Connector Did it publish? Were definitions generated?
connectors/source-mysql

if you have connectors that successfully published but failed definition generation, follow step 4 here ▶️

@sergio-ropero

Sergio Ropero (sergio-ropero) commented Mar 21, 2023

Copy link
Copy Markdown
Contributor Author

/publish connector=connectors/source-mssql

🕑 Publishing the following connectors:
connectors/source-mssql
https://github.com/airbytehq/airbyte/actions/runs/4478479646


Connector Did it publish? Were definitions generated?

@sergio-ropero

Sergio Ropero (sergio-ropero) commented Mar 21, 2023

Copy link
Copy Markdown
Contributor Author

/publish connector=connectors/source-postgres

🕑 Publishing the following connectors:
connectors/source-postgres
https://github.com/airbytehq/airbyte/actions/runs/4478480281


Connector Did it publish? Were definitions generated?
connectors/source-postgres

if you have connectors that successfully published but failed definition generation, follow step 4 here ▶️

@sergio-ropero

Sergio Ropero (sergio-ropero) commented Mar 21, 2023

Copy link
Copy Markdown
Contributor Author

/publish connector=connectors/source-alloydb-strict-encrypt

🕑 Publishing the following connectors:
connectors/source-alloydb-strict-encrypt
https://github.com/airbytehq/airbyte/actions/runs/4478481891


Connector Did it publish? Were definitions generated?
connectors/source-alloydb-strict-encrypt

if you have connectors that successfully published but failed definition generation, follow step 4 here ▶️

@sergio-ropero

Sergio Ropero (sergio-ropero) commented Mar 21, 2023

Copy link
Copy Markdown
Contributor Author

/publish connector=connectors/source-mysql-strict-encrypt

🕑 Publishing the following connectors:
connectors/source-mysql-strict-encrypt
https://github.com/airbytehq/airbyte/actions/runs/4478483445


Connector Did it publish? Were definitions generated?
connectors/source-mysql-strict-encrypt

if you have connectors that successfully published but failed definition generation, follow step 4 here ▶️

@sergio-ropero

Sergio Ropero (sergio-ropero) commented Mar 21, 2023

Copy link
Copy Markdown
Contributor Author

/publish connector=connectors/source-postgres-strict-encrypt

🕑 Publishing the following connectors:
connectors/source-postgres-strict-encrypt
https://github.com/airbytehq/airbyte/actions/runs/4478485086


Connector Did it publish? Were definitions generated?
connectors/source-postgres-strict-encrypt

if you have connectors that successfully published but failed definition generation, follow step 4 here ▶️

@sergio-ropero

Sergio Ropero (sergio-ropero) commented Mar 21, 2023

Copy link
Copy Markdown
Contributor Author

/publish connector=connectors/source-postgres

🕑 Publishing the following connectors:connectors/source-postgreshttps://github.com/airbytehq/airbyte/actions/runs/4478480281

Connector Did it publish? Were definitions generated?
connectors/source-postgres ✅ ❌

Definitions generated manually

@sergio-ropero

Copy link
Copy Markdown
Contributor Author

/publish connector=connectors/source-mysql

🕑 Publishing the following connectors:connectors/source-mysqlhttps://github.com/airbytehq/airbyte/actions/runs/4478478589

Connector Did it publish? Were definitions generated?
connectors/source-mysql ✅ ❌

Generated definitions manually

@sergio-ropero

Copy link
Copy Markdown
Contributor Author

/publish connector=connectors/source-mssql

🕑 Publishing the following connectors:connectors/source-mssqlhttps://github.com/airbytehq/airbyte/actions/runs/4478479646

Connector Did it publish? Were definitions generated?

Published fine, Generated definitions manually

@sergio-ropero

Sergio Ropero (sergio-ropero) commented Mar 21, 2023

Copy link
Copy Markdown
Contributor Author

/publish connector=connectors/source-mssql-strict-encrypt auto-bump-version=false run-tests=false

🕑 Publishing the following connectors:
connectors/source-mssql-strict-encrypt
https://github.com/airbytehq/airbyte/actions/runs/4479836466


Connector Did it publish? Were definitions generated?
connectors/source-mssql-strict-encrypt

if you have connectors that successfully published but failed definition generation, follow step 4 here ▶️

@sergio-ropero

Sergio Ropero (sergio-ropero) commented Mar 21, 2023

Copy link
Copy Markdown
Contributor Author

/publish connector=connectors/source-postgres-strict-encrypt auto-bump-version=false run-tests=false

🕑 Publishing the following connectors:
connectors/source-postgres-strict-encrypt
https://github.com/airbytehq/airbyte/actions/runs/4480159486


Connector Did it publish? Were definitions generated?
connectors/source-postgres-strict-encrypt

if you have connectors that successfully published but failed definition generation, follow step 4 here ▶️

@sergio-ropero
Sergio Ropero (sergio-ropero) deleted the sergio/disable-cdc-checkpointing branch March 21, 2023 14:32
Ella Rohm-Ensing (erohmensing) pushed a commit that referenced this pull request Mar 22, 2023
* Disable CDC checkpointing until finished the investigation with reading Offset file during syncs

* Bump connector versions

* auto-bump connector version

* Publish postgres manually

* Definitions manually for mysql

* Generated definitions manually mssql

---------

Co-authored-by: Octavia Squidington III <octavia-squidington-iii@users.noreply.github.com>
Ella Rohm-Ensing (erohmensing) pushed a commit that referenced this pull request Mar 22, 2023
* Disable CDC checkpointing until finished the investigation with reading Offset file during syncs

* Bump connector versions

* auto-bump connector version

* Publish postgres manually

* Definitions manually for mysql

* Generated definitions manually mssql

---------

Co-authored-by: Octavia Squidington III <octavia-squidington-iii@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants