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

Destination Snowflake: Enable in-connector normalization #25782

Merged
merged 10 commits into from Jun 1, 2023

Conversation

edgao
Copy link
Contributor

@edgao edgao commented May 3, 2023

closes #25502

What

Enable in-connector normalization for snowflake. See https://github.com/airbytehq/airbyte-platform-internal/pull/6349 for sync screenshot.

How

Mostly just replicate the bigquery changes.

🚨 User Impact 🚨

None.

@github-actions
Copy link
Contributor

github-actions bot commented May 3, 2023

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 and you've followed all steps in the Breaking Changes Checklist
  • Connector version has been incremented in the Dockerfile and metadata.yaml according to our Semantic Versioning for Connectors guidelines
  • 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
  • You, or an Airbyter, have run /test successfully on this PR - or on a non-forked branch
  • You, or an Airbyter, have run /publish successfully on this PR - or on a non-forked branch
  • You've updated the connector's metadata.yaml file (new!)
  • The Octavia bot updated the source_definitions.yaml or destination_definitions.yaml, or you ran processResources manually (deprecated)

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.

@github-actions
Copy link
Contributor

github-actions bot commented May 3, 2023

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 (0)

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

❌ Destinations (1)

Connector Version Changelog Publish
destination-snowflake 1.0.5
(diff seed version)
  • See "Actionable Items" below for how to resolve warnings and errors.

👀 Other Modules (1)

  • base-normalization

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 cloud or oss registry, 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 you have added a metadata.yaml file and the expected registries are enabled.

@edgao edgao changed the title add support for snowflake Destination Snowflake: Enable in-connector normalization May 5, 2023
@edgao edgao force-pushed the edgao/normalization_in_snowflake branch from 1bd9d9c to c4de8a4 Compare May 5, 2023 14:13
@edgao

This comment was marked as outdated.

@edgao

This comment was marked as outdated.

@edgao

This comment was marked as outdated.

@edgao
Copy link
Contributor Author

edgao commented May 8, 2023

/test connector=connectors/destination-snowflake

🕑 connectors/destination-snowflake https://github.com/airbytehq/airbyte/actions/runs/4918585004
✅ connectors/destination-snowflake https://github.com/airbytehq/airbyte/actions/runs/4918585004
Python tests coverage:

Name                                                              Stmts   Miss  Cover
-------------------------------------------------------------------------------------
normalization/transform_config/__init__.py                            2      0   100%
normalization/transform_catalog/reserved_keywords.py                 15      0   100%
normalization/transform_catalog/__init__.py                           2      0   100%
normalization/destination_type.py                                    18      0   100%
normalization/__init__.py                                             4      0   100%
normalization/transform_catalog/destination_name_transformer.py     171     10    94%
normalization/transform_catalog/table_name_registry.py              174     34    80%
normalization/transform_config/transform.py                         195     48    75%
normalization/transform_catalog/utils.py                             51     14    73%
normalization/transform_catalog/dbt_macro.py                         22      7    68%
normalization/transform_catalog/catalog_processor.py                147     80    46%
normalization/transform_catalog/transform.py                         65     39    40%
normalization/transform_catalog/stream_processor.py                 595    400    33%
-------------------------------------------------------------------------------------
TOTAL                                                              1461    632    57%

Build Passed

Test summary info:

All Passed

@edgao edgao force-pushed the edgao/normalization_in_snowflake branch from 7d0f8fc to cf1e139 Compare May 8, 2023 20:22
@octavia-squidington-iii octavia-squidington-iii added the area/documentation Improvements or additions to documentation label May 8, 2023
@edgao edgao marked this pull request as ready for review May 8, 2023 20:31
@edgao edgao requested a review from a team as a code owner May 8, 2023 20:31
@edgao edgao requested review from jbfbell and cynthiaxyin May 8, 2023 20:31
Copy link
Contributor

@ryankfu ryankfu left a comment

Choose a reason for hiding this comment

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

LGTM

@edgao
Copy link
Contributor Author

edgao commented May 8, 2023

/publish connector=connectors/destination-snowflake pre-release=true

🕑 Publishing the following connectors:
connectors/destination-snowflake
https://github.com/airbytehq/airbyte/actions/runs/4920667036


Connector Version Did it publish? Were definitions generated?
connectors/destination-snowflake 1.0.3-dev.cf1e1399

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

@@ -27,7 +27,7 @@ application {
dependencies {
implementation 'com.google.cloud:google-cloud-storage:1.113.16'
implementation 'com.google.auth:google-auth-library-oauth2-http:0.25.5'
// Updating to any newer version (e.g. 3.13.22) is causing a regression with normalization.
// Updating to any newer version (e.g. 3.13.22) is causing a regression with normalization.
Copy link
Contributor

Choose a reason for hiding this comment

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

:(

@edgao
Copy link
Contributor Author

edgao commented May 10, 2023

/publish connector=connectors/destination-snowflake pre-release=true

🕑 Publishing the following connectors:
connectors/destination-snowflake
https://github.com/airbytehq/airbyte/actions/runs/4931600004


Connector Version Did it publish? Were definitions generated?
connectors/destination-snowflake 1.0.3-dev.9e72dced

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

@cynthiaxyin cynthiaxyin force-pushed the edgao/normalization_in_snowflake branch from 9e72dce to 70a7891 Compare May 10, 2023 21:34
@cynthiaxyin

This comment was marked as outdated.

@cynthiaxyin
Copy link
Contributor

cynthiaxyin commented May 10, 2023

/publish connector=connectors/destination-snowflake pre-release=true

🕑 Publishing the following connectors:
connectors/destination-snowflake
https://github.com/airbytehq/airbyte/actions/runs/4942377147


Connector Version Did it publish? Were definitions generated?
connectors/destination-snowflake 1.0.3-dev.70a78910

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

@cynthiaxyin cynthiaxyin force-pushed the edgao/normalization_in_snowflake branch 2 times, most recently from 326793c to 370daae Compare May 25, 2023 22:24
@cynthiaxyin
Copy link
Contributor

cynthiaxyin commented May 25, 2023

/test connector=connectors/destination-snowflake

🕑 connectors/destination-snowflake https://github.com/airbytehq/airbyte/actions/runs/5085153700
✅ connectors/destination-snowflake https://github.com/airbytehq/airbyte/actions/runs/5085153700
Python tests coverage:

Name                                                              Stmts   Miss  Cover
-------------------------------------------------------------------------------------
normalization/transform_config/__init__.py                            2      0   100%
normalization/transform_catalog/reserved_keywords.py                 15      0   100%
normalization/transform_catalog/__init__.py                           2      0   100%
normalization/destination_type.py                                    18      0   100%
normalization/__init__.py                                             4      0   100%
normalization/transform_catalog/destination_name_transformer.py     171     10    94%
normalization/transform_catalog/table_name_registry.py              174     34    80%
normalization/transform_config/transform.py                         195     48    75%
normalization/transform_catalog/utils.py                             51     14    73%
normalization/transform_catalog/dbt_macro.py                         22      7    68%
normalization/transform_catalog/catalog_processor.py                147     80    46%
normalization/transform_catalog/transform.py                         65     39    40%
normalization/transform_catalog/stream_processor.py                 603    407    33%
-------------------------------------------------------------------------------------
TOTAL                                                              1469    639    57%

Build Passed

Test summary info:

All Passed

Copy link
Contributor Author

@edgao edgao left a comment

Choose a reason for hiding this comment

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

I can't approve this, but :shipit: thanks for taking this to the finish line!

image

@cynthiaxyin cynthiaxyin force-pushed the edgao/normalization_in_snowflake branch from 370daae to c78361d Compare May 31, 2023 22:39
@github-actions
Copy link
Contributor

Coverage report for source-postgres

There is no coverage information present for the Files changed

Total Project Coverage 65.93% 🍏

@cynthiaxyin cynthiaxyin merged commit 7a75c0c into master Jun 1, 2023
24 of 26 checks passed
@cynthiaxyin cynthiaxyin deleted the edgao/normalization_in_snowflake branch June 1, 2023 21:14
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.

Implement in-destination normalization for snowflake
6 participants