Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor debezium harness in CDK, push connector-specific logic down to connectors #34573

Merged
merged 12 commits into from
Jan 27, 2024

Conversation

postamar
Copy link
Contributor

@postamar postamar commented Jan 26, 2024

In the course of restructuring the CDK I stumbled on the tangled knot of dependencies that was our debezium harness. This PR untangles it. Debezium-with-mongo code is moved out of the CDK and into source-mongodb-v2, same with postgres and mysql. @stephane-airbyte had already taken care of mssql.

This is best reviewed commit-by-commit. First we have the version number change boilerplate. The next commits, up to but not including the last, work towards removing the DebeziumConnectorType enum from the debezium harness. This makes it possible to inject mongo-specific-dependencies into AirbyteDebeziumHandler instead of dispatching on that enum value deeper down. Once that is done, the final commit straightforwardly moves the connector-specific source files from the CDK to the respective connectors.

Copy link

vercel bot commented Jan 26, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

1 Ignored Deployment
Name Status Preview Comments Updated (UTC)
airbyte-docs ⬜️ Ignored (Inspect) Visit Preview Jan 27, 2024 0:40am

Copy link
Contributor

Before Merging a Connector Pull Request

Wow! What a great pull request you have here! 🎉

To merge this PR, ensure the following has been done/considered for each connector added or updated:

  • PR name follows PR naming conventions
  • Breaking changes are considered. If a Breaking Change is being introduced, ensure an Airbyte engineer has created a Breaking Change Plan.
  • Connector version has been incremented in the Dockerfile and metadata.yaml according to our Semantic Versioning for Connectors guidelines
  • You've updated the connector's metadata.yaml file any other relevant changes, including a breakingChanges entry for major version bumps. See metadata.yaml docs
  • Secrets in the connector's spec are annotated with airbyte_secret
  • All documentation files are up to date. (README.md, bootstrap.md, docs.md, etc...)
  • Changelog updated in docs/integrations/<source or destination>/<name>.md with an entry for the new version. See changelog example
  • Migration guide updated in docs/integrations/<source or destination>/<name>-migrations.md with an entry for the new version, if the version is a breaking change. See migration guide example
  • If set, you've ensured the icon is present in the platform-internal repo. (Docs)

If the checklist is complete, but the CI check is failing,

  1. Check for hidden checklists in your PR description

  2. Toggle the github label checklist-action-run on/off to re-run the checklist CI.

Copy link
Contributor

github-actions bot commented Jan 26, 2024

Coverage report for source-postgres

File Coverage [73.05%]
PostgresCdcConnectorMetadataInjector.java 100% 🍏
PostgresCatalogHelper.java 100% 🍏
PostgresReplicationConnection.java 92.31% 🍏
PostgresCdcCtidInitializer.java 89.35% 🍏
PostgresSource.java 88.32% 🍏
PostgresDebeziumStateUtil.java 84.13% 🍏
PostgresCdcTargetPosition.java 77.99%
PostgresCustomLoader.java 76.47%
PostgresCdcProperties.java 48.16%
PostgresConverter.java 33.33%
Total Project Coverage 69.34% 🍏

@postamar postamar marked this pull request as ready for review January 26, 2024 19:05
@postamar postamar requested a review from a team as a code owner January 26, 2024 19:05
@octavia-squidington-iii octavia-squidington-iii added area/documentation Improvements or additions to documentation CDK Connector Development Kit labels Jan 26, 2024
@postamar postamar changed the title [WIP] debezium harness refactor refactor debezium harness in CDK, push connector-specific logic down to connectors Jan 27, 2024
@postamar
Copy link
Contributor Author

postamar commented Jan 27, 2024

/publish-java-cdk

🕑 https://github.com/airbytehq/airbyte/actions/runs/7678602735
✅ Successfully published Java CDK version=0.16.0!

This reverts commit 932032c.
@postamar postamar enabled auto-merge (squash) January 27, 2024 12:40
@postamar
Copy link
Contributor Author

/approve-and-merge reason="source-mysql has flaky tests, not related to changes here"

@octavia-approvington
Copy link
Contributor

This is really good
simply the best

@octavia-approvington octavia-approvington merged commit 6f0fd7a into master Jan 27, 2024
27 of 30 checks passed
@octavia-approvington octavia-approvington deleted the postamar/unentangle-debezium branch January 27, 2024 20:05
jatinyadav-cc pushed a commit to ollionorg/datapipes-airbyte that referenced this pull request Feb 21, 2024
jatinyadav-cc pushed a commit to ollionorg/datapipes-airbyte that referenced this pull request Feb 26, 2024
jatinyadav-cc pushed a commit to ollionorg/datapipes-airbyte that referenced this pull request Feb 26, 2024
jatinyadav-cc pushed a commit to ollionorg/datapipes-airbyte that referenced this pull request Feb 26, 2024
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.

None yet

4 participants