Skip to content

feat(gcp)!: Update to SDK V3 for native Arrow support#10784

Merged
yevgenypats merged 4 commits intomainfrom
feat/gcp_sdk_v3
May 25, 2023
Merged

feat(gcp)!: Update to SDK V3 for native Arrow support#10784
yevgenypats merged 4 commits intomainfrom
feat/gcp_sdk_v3

Conversation

@yevgenypats
Copy link
Contributor

@yevgenypats yevgenypats commented May 14, 2023

Closes #10744

BEGIN_COMMIT_OVERRIDE
feat: Update to use Apache Arrow type system (#10784)

BREAKING-CHANGE: This release introduces an internal change to our type system to use Apache Arrow. This should not have any visible breaking changes, however due to the size of the change we are introducing it under a major version bump to communicate that it might have some bugs that we weren't able to catch during our internal tests. If you encounter an issue during the upgrade, please submit a bug report. You will also need to update destinations depending on which one you use:

  • Azure Blob Storage >= v3.2.0
  • BigQuery >= v3.0.0
  • ClickHouse >= v3.1.1
  • DuckDB >= v1.1.6
  • Elasticsearch >= v2.0.0
  • File >= v3.2.0
  • Firehose >= v2.0.2
  • GCS >= v3.2.0
  • Gremlin >= v2.1.10
  • Kafka >= v3.0.1
  • Meilisearch >= v2.0.1
  • Microsoft SQL Server >= v4.2.0
  • MongoDB >= v2.0.1
  • MySQL >= v2.0.2
  • Neo4j >= v3.0.0
  • PostgreSQL >= v4.2.0
  • S3 >= v4.4.0
  • Snowflake >= v2.1.1
  • SQLite >= v2.2.0

END_COMMIT_OVERRIDE

@yevgenypats yevgenypats requested a review from disq as a code owner May 14, 2023 16:47
@yevgenypats yevgenypats requested review from disq and removed request for disq May 14, 2023 16:47
@cq-bot cq-bot added the gcp label May 14, 2023
kodiakhq bot pushed a commit to cloudquery/plugin-sdk that referenced this pull request May 15, 2023
Few notes:

- Most of the code here was removed in #854 to prevent accidental use before it was ready
- Sources moved to use the new `schema.Table` which means use of `arrow.DataType` instead of our old `ValueType`
- Protocol in sources and destinations are upgraded to use native arrow format (sources v2 and dest v1) - https://github.com/cloudquery/plugin-pb-go
- Introduces a new `scalar` package which is mostly used by our "managed" sources and basically our old cqtypes just now using arrow types (which also support nesting). This will hopefully go upstream one day but I don't think we should block on that as the upstream package is not a fit right now and will take time for such refactor to make it upstream. 

Follow-up PRs with example sources and dest will follow soon.

IMPORTANT: all destinations should be released first as we decided new sources will work only with new destination to avoid un-necessary backward compatibility maintenance.  

Example PRs:
- PostgreSQL: cloudquery/cloudquery#10783
- GCP: cloudquery/cloudquery#10784
- CLI: cloudquery/cloudquery#10785
@cq-bot cq-bot added ci labels May 25, 2023
@yevgenypats yevgenypats removed the request for review from erezrokah May 25, 2023 13:44
@yevgenypats yevgenypats requested a review from candiduslynx May 25, 2023 14:08
@yevgenypats yevgenypats changed the title feat(gcp): Update to SDK V3 native arrow support feat(gcp)! Update to SDK V3 native arrow support May 25, 2023
@hermanschaaf hermanschaaf changed the title feat(gcp)! Update to SDK V3 native arrow support feat(gcp)!: Update to SDK V3 native arrow support May 25, 2023
@hermanschaaf hermanschaaf changed the title feat(gcp)!: Update to SDK V3 native arrow support feat(gcp)!: Update to SDK V3 for native arrow support May 25, 2023
@hermanschaaf hermanschaaf changed the title feat(gcp)!: Update to SDK V3 for native arrow support feat(gcp)!: Update to SDK V3 for native Arrow support May 25, 2023
@yevgenypats yevgenypats merged commit 612d3ea into main May 25, 2023
@yevgenypats yevgenypats deleted the feat/gcp_sdk_v3 branch May 25, 2023 15:15
@yevgenypats
Copy link
Contributor Author

Close #10744

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: Migrate plugin/source/gcp to github.com/cloudquery/plugin-sdk/v3

2 participants