Skip to content

T&D: Use non-null columns for PKs rather then scanning raw table to ensure all records have PKs - #30779

Merged
Edward Gao (edgao) merged 19 commits into
masterfrom
evan/no-t_and_d-pk-check
Oct 3, 2023
Merged

T&D: Use non-null columns for PKs rather then scanning raw table to ensure all records have PKs#30779
Edward Gao (edgao) merged 19 commits into
masterfrom
evan/no-t_and_d-pk-check

Conversation

@evantahler

@evantahler Evan Tahler (evantahler) commented Sep 27, 2023

Copy link
Copy Markdown
Contributor

Closes #30762.

This saves a scan of the raw table by swapping a query looking for null PKs each T&D by altering the final tables to have NON-NULL PK columns.
#30812 is merged into this PR, so existing syncs will undergo a one-time soft reset (rebuild) of the final table to add the "NOT NULL" constraint on primary key columns

@vercel

vercel Bot commented Sep 27, 2023

Copy link
Copy Markdown

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 Oct 3, 2023 4:04pm

@evantahler Evan Tahler (evantahler) changed the title T&D: Use not-null columns for PKs rather then scanning raw table to e… T&D: Use not-null columns for PKs rather then scanning raw table to ensure all records have PKs Sep 27, 2023
@github-actions

github-actions Bot commented Sep 27, 2023

Copy link
Copy Markdown
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.

@evantahler
Evan Tahler (evantahler) marked this pull request as ready for review September 27, 2023 00:54
@evantahler
Evan Tahler (evantahler) requested a review from a team as a code owner September 27, 2023 00:54
@octavia-squidington-iii Octavia Squidington III (octavia-squidington-iii) added the area/documentation Improvements or additions to documentation label Sep 27, 2023
@airbyte-oss-build-runner

This comment was marked as outdated.

@airbyte-oss-build-runner

This comment was marked as outdated.

@airbyte-oss-build-runner

This comment was marked as outdated.

@airbyte-oss-build-runner

This comment was marked as outdated.

@evantahler Evan Tahler (evantahler) changed the title T&D: Use not-null columns for PKs rather then scanning raw table to ensure all records have PKs T&D: Use non-null columns for PKs rather then scanning raw table to ensure all records have PKs Sep 27, 2023
@airbyte-oss-build-runner

This comment was marked as outdated.

@airbyte-oss-build-runner

This comment was marked as outdated.

…nfo (#30812)

Co-authored-by: evantahler <evantahler@users.noreply.github.com>
Co-authored-by: Joe Bell <joseph.bell@airbyte.io>
Co-authored-by: jbfbell <jbfbell@users.noreply.github.com>
@airbyte-oss-build-runner

Copy link
Copy Markdown
Collaborator

destination-bigquery test report (commit ea9f9b7806) - ✅

⏲️ Total pipeline duration: 03mn31s

Step Result
Build connector tar
Build destination-bigquery docker image for platform linux/x86_64
Java Connector Unit Tests
Java Connector Integration Tests
Validate metadata for destination-bigquery
Connector version semver check
Connector version increment check
QA checks

🔗 View the logs here

☁️ View runs for commit in Dagger Cloud

Please note that tests are only run on PR ready for review. Please set your PR to draft mode to not flood the CI engine and upstream service on following commits.
You can run the same pipeline locally on this branch with the airbyte-ci tool with the following command

airbyte-ci connectors --name=destination-bigquery test

@airbyte-oss-build-runner

Copy link
Copy Markdown
Collaborator

destination-snowflake test report (commit ea9f9b7806) - ✅

⏲️ Total pipeline duration: 02mn55s

Step Result
Build connector tar
Build destination-snowflake docker image for platform linux/x86_64
Java Connector Unit Tests
Java Connector Integration Tests
Validate metadata for destination-snowflake
Connector version semver check
Connector version increment check
QA checks

🔗 View the logs here

☁️ View runs for commit in Dagger Cloud

Please note that tests are only run on PR ready for review. Please set your PR to draft mode to not flood the CI engine and upstream service on following commits.
You can run the same pipeline locally on this branch with the airbyte-ci tool with the following command

airbyte-ci connectors --name=destination-snowflake test

@edgao Edward Gao (edgao) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm, couple minor comments

@airbyte-oss-build-runner

This comment was marked as outdated.

@airbyte-oss-build-runner

Copy link
Copy Markdown
Collaborator

destination-bigquery test report (commit d7e5c4c0a4) - ✅

⏲️ Total pipeline duration: 08mn45s

Step Result
Build connector tar
Build destination-bigquery docker image for platform linux/x86_64
Java Connector Unit Tests
Java Connector Integration Tests
Validate metadata for destination-bigquery
Connector version semver check
Connector version increment check
QA checks

🔗 View the logs here

☁️ View runs for commit in Dagger Cloud

Please note that tests are only run on PR ready for review. Please set your PR to draft mode to not flood the CI engine and upstream service on following commits.
You can run the same pipeline locally on this branch with the airbyte-ci tool with the following command

airbyte-ci connectors --name=destination-bigquery test

@airbyte-oss-build-runner

Copy link
Copy Markdown
Collaborator

destination-snowflake test report (commit d7e5c4c0a4) - ✅

⏲️ Total pipeline duration: 10mn05s

Step Result
Build connector tar
Build destination-snowflake docker image for platform linux/x86_64
Java Connector Unit Tests
Java Connector Integration Tests
Validate metadata for destination-snowflake
Connector version semver check
Connector version increment check
QA checks

🔗 View the logs here

☁️ View runs for commit in Dagger Cloud

Please note that tests are only run on PR ready for review. Please set your PR to draft mode to not flood the CI engine and upstream service on following commits.
You can run the same pipeline locally on this branch with the airbyte-ci tool with the following command

airbyte-ci connectors --name=destination-snowflake test

…java/io/airbyte/integrations/destination/bigquery/typing_deduping/BigQuerySqlGenerator.java

Co-authored-by: Joe Bell <joseph.bell@airbyte.io>
@airbyte-oss-build-runner

Copy link
Copy Markdown
Collaborator

destination-snowflake test report (commit fb0e237872) - ✅

⏲️ Total pipeline duration: 12mn49s

Step Result
Build connector tar
Build destination-snowflake docker image for platform linux/x86_64
Java Connector Unit Tests
Java Connector Integration Tests
Validate metadata for destination-snowflake
Connector version semver check
Connector version increment check
QA checks

🔗 View the logs here

☁️ View runs for commit in Dagger Cloud

Please note that tests are only run on PR ready for review. Please set your PR to draft mode to not flood the CI engine and upstream service on following commits.
You can run the same pipeline locally on this branch with the airbyte-ci tool with the following command

airbyte-ci connectors --name=destination-snowflake test

@airbyte-oss-build-runner

Copy link
Copy Markdown
Collaborator

destination-bigquery test report (commit fb0e237872) - ❌

⏲️ Total pipeline duration: 01mn55s

Step Result
Build connector tar
Validate metadata for destination-bigquery
Connector version semver check
Connector version increment check
QA checks

🔗 View the logs here

☁️ View runs for commit in Dagger Cloud

Please note that tests are only run on PR ready for review. Please set your PR to draft mode to not flood the CI engine and upstream service on following commits.
You can run the same pipeline locally on this branch with the airbyte-ci tool with the following command

airbyte-ci connectors --name=destination-bigquery test

@edgao
Edward Gao (edgao) enabled auto-merge (squash) October 3, 2023 15:55
@airbyte-oss-build-runner

Copy link
Copy Markdown
Collaborator

destination-bigquery test report (commit b6ecbc2a65) - ❌

⏲️ Total pipeline duration: 09mn42s

Step Result
Build connector tar
Build destination-bigquery docker image for platform linux/x86_64
Java Connector Unit Tests
Java Connector Integration Tests
Validate metadata for destination-bigquery
Connector version semver check
Connector version increment check
QA checks

🔗 View the logs here

☁️ View runs for commit in Dagger Cloud

Please note that tests are only run on PR ready for review. Please set your PR to draft mode to not flood the CI engine and upstream service on following commits.
You can run the same pipeline locally on this branch with the airbyte-ci tool with the following command

airbyte-ci connectors --name=destination-bigquery test

@airbyte-oss-build-runner

Copy link
Copy Markdown
Collaborator

destination-bigquery test report (commit 5454a6baa8) - ✅

⏲️ Total pipeline duration: 09mn09s

Step Result
Build connector tar
Build destination-bigquery docker image for platform linux/x86_64
Java Connector Unit Tests
Java Connector Integration Tests
Validate metadata for destination-bigquery
Connector version semver check
Connector version increment check
QA checks

🔗 View the logs here

☁️ View runs for commit in Dagger Cloud

Please note that tests are only run on PR ready for review. Please set your PR to draft mode to not flood the CI engine and upstream service on following commits.
You can run the same pipeline locally on this branch with the airbyte-ci tool with the following command

airbyte-ci connectors --name=destination-bigquery test

@airbyte-oss-build-runner

Copy link
Copy Markdown
Collaborator

destination-snowflake test report (commit 5454a6baa8) - ✅

⏲️ Total pipeline duration: 03mn26s

Step Result
Build connector tar
Build destination-snowflake docker image for platform linux/x86_64
Java Connector Unit Tests
Java Connector Integration Tests
Validate metadata for destination-snowflake
Connector version semver check
Connector version increment check
QA checks

🔗 View the logs here

☁️ View runs for commit in Dagger Cloud

Please note that tests are only run on PR ready for review. Please set your PR to draft mode to not flood the CI engine and upstream service on following commits.
You can run the same pipeline locally on this branch with the airbyte-ci tool with the following command

airbyte-ci connectors --name=destination-snowflake test

@edgao
Edward Gao (edgao) merged commit 4992fce into master Oct 3, 2023
@edgao
Edward Gao (edgao) deleted the evan/no-t_and_d-pk-check branch October 3, 2023 16:23
Edward Gao (edgao) added a commit that referenced this pull request Oct 4, 2023
…ble to ensure all records have PKs (#30779)"

This reverts commit 4992fce.
Alexandre Girard (girarda) pushed a commit that referenced this pull request Oct 10, 2023
…nsure all records have PKs (#30779)

Co-authored-by: evantahler <evantahler@users.noreply.github.com>
Co-authored-by: Joe Bell <joseph.bell@airbyte.io>
Co-authored-by: jbfbell <jbfbell@users.noreply.github.com>
Co-authored-by: Edward Gao <edward.gao@airbyte.io>
Co-authored-by: edgao <edgao@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Do we need the PK checks in T&D if we can make the PK columns non-null?

5 participants