Skip to content

feat(iceberg): add IcebergBinaryRowWriter#366

Open
charlesdong1991 wants to merge 4 commits intoapache:mainfrom
charlesdong1991:iceberg-binary-row-writer
Open

feat(iceberg): add IcebergBinaryRowWriter#366
charlesdong1991 wants to merge 4 commits intoapache:mainfrom
charlesdong1991:iceberg-binary-row-writer

Conversation

@charlesdong1991
Copy link
Contributor

@charlesdong1991 charlesdong1991 commented Feb 22, 2026

Purpose

This PR implements IcebergBinaryRowWriter, efforts as part of #194

Tests

All tests are passed locally

Copy link
Contributor

@leekeiabstraction leekeiabstraction left a comment

Choose a reason for hiding this comment

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

TY for the PR, left some comments.

///
/// [`CompactedRowWriter`]: crate::row::compacted::CompactedRowWriter
/// [`IcebergBucketingFunction`]: crate::bucketing::IcebergBucketingFunction
pub struct IcebergBinaryRowWriter {
Copy link
Contributor

Choose a reason for hiding this comment

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

Should this PR also contain IcebergKeyEncoder? IcebergKeyEncoder implementation should be small, but the test cases there should provide a lot of value in verifying correctness of IcebergBinaryRowWriter.

See CompactedKeyEncoder implementation and test as example.

Copy link
Contributor Author

@charlesdong1991 charlesdong1991 Feb 24, 2026

Choose a reason for hiding this comment

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

Actually, similar to previous comment, I notice IcebergKeyEncoder is being worked on in #308 .

So I can have a TODO to verify and add tests (since that key encoder is sort of consumer of row writer) after that PR is merged?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

i added a TODO comment in the function, and will address after 308

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.

2 participants