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 Iceberg: Fix object type handling #49848

Merged
merged 4 commits into from
Dec 20, 2024
Merged

Conversation

edgao
Copy link
Contributor

@edgao edgao commented Dec 17, 2024

closes https://github.com/airbytehq/airbyte-internal-issues/issues/11038

Probably easiest to review by commit:

  1. Fix the nessie test config. Nessie tests were just hard crashing :/
  2. Fix all the issues with schemaless types (object with empty schema, etc)
    • some incidental changes to ExpectedRecordMapper - ended up not needing these, but they'll be useful in a future PR
    • update the mapper pipeline to actually convert schemaless types to StringType
      • the parquet pipeline doesn't do this for some reason :/ johnny ran into a bug related to this at some point, but I can't seem to repro here 🤷
      • if we do have issues later on, we can just do what parquet does (i.e. have the AirbyteValueToIcebergRecord explicitly handle ObjectWithoutSchema/etc instead of just crashing)
    • update the data dumper to coerce values by their actual type, rather than by the declared schema - previously the data dumper also crashed on these types
  3. Update the RecordDiffer to correctly handle nullEqualsUnset in nested structs
  4. cleanup + formatting

Copy link

vercel bot commented Dec 17, 2024

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

Name Status Preview Comments Updated (UTC)
airbyte-docs ✅ Ready (Inspect) Visit Preview 💬 Add feedback Dec 20, 2024 4:16pm

@subodh1810
Copy link
Contributor

@edgao for the following, raised a PR to fix it #49854

TODO: timestamps are broken (class java.time.OffsetDateTime cannot be cast to class java.time.LocalDateTime)

@edgao edgao force-pushed the edgao/iceberg_glue_integration_test branch from ea13d27 to 8dc20e8 Compare December 19, 2024 16:49
@edgao edgao force-pushed the edgao/iceberg_data_dumping branch from 09aee12 to df3e451 Compare December 19, 2024 16:49
@edgao edgao force-pushed the edgao/iceberg_data_dumping branch from df3e451 to 90deb5f Compare December 19, 2024 16:59
@edgao edgao force-pushed the edgao/iceberg_glue_integration_test branch from 1d0f453 to e98908c Compare December 20, 2024 00:36
@edgao edgao force-pushed the edgao/iceberg_data_dumping branch from 90deb5f to 3180cfe Compare December 20, 2024 00:36
@edgao edgao force-pushed the edgao/iceberg_data_dumping branch from 3180cfe to 66ec912 Compare December 20, 2024 00:48
@edgao edgao force-pushed the edgao/iceberg_data_dumping branch from 66ec912 to 86c381b Compare December 20, 2024 01:12
@edgao edgao force-pushed the edgao/iceberg_glue_integration_test branch from e98908c to 6020429 Compare December 20, 2024 01:12
Base automatically changed from edgao/iceberg_glue_integration_test to master December 20, 2024 16:09
@edgao edgao force-pushed the edgao/iceberg_data_dumping branch from 86c381b to cea687c Compare December 20, 2024 16:09
@edgao edgao marked this pull request as ready for review December 20, 2024 16:40
@edgao edgao requested a review from a team as a code owner December 20, 2024 16:40
Copy link
Contributor

@jdpgrailsdev jdpgrailsdev left a comment

Choose a reason for hiding this comment

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

:shipit:

@edgao edgao merged commit 66cb0f5 into master Dec 20, 2024
36 checks passed
@edgao edgao deleted the edgao/iceberg_data_dumping branch December 20, 2024 17:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/connectors Connector related issues CDK Connector Development Kit connectors/destination/iceberg-v2
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants