-
Notifications
You must be signed in to change notification settings - Fork 3.1k
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
Fix failure when equality delete updated nested fields in Iceberg #24512
base: master
Are you sure you want to change the base?
Conversation
73516cb
to
ff29353
Compare
ff29353
to
15f60de
Compare
plugin/trino-iceberg/src/main/java/io/trino/plugin/iceberg/IcebergPageSourceProvider.java
Show resolved
Hide resolved
plugin/trino-iceberg/src/main/java/io/trino/plugin/iceberg/IcebergPageSource.java
Show resolved
Hide resolved
plugin/trino-iceberg/src/main/java/io/trino/plugin/iceberg/delete/RowPredicate.java
Outdated
Show resolved
Hide resolved
15f60de
to
1757e4d
Compare
plugin/trino-iceberg/src/main/java/io/trino/plugin/iceberg/delete/RowPredicate.java
Outdated
Show resolved
Hide resolved
{ | ||
int positionCount = page.getPositionCount(); | ||
int[] retained = new int[positionCount]; | ||
int retainedCount = 0; | ||
for (int position = 0; position < positionCount; position++) { | ||
if (test(page, position)) { | ||
Page selectedPage = columns.length == 0 ? page : page.getColumns(columns); | ||
if (test(selectedPage, position)) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If we extract a subset of columns as input to test
, then does it break assumptions about block index in the implementations ? E.g. in io.trino.plugin.iceberg.delete.PositionDeleteFilter#createPredicate
we have page.getBlock(filePosChannel)
and that can select different column if we pass in a subset of blocks of the page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure if I fully understand your concern. List<IcebergColumnHandle> columns
argument in PositionDeleteFilter#createPredicate
is also adjusted in this PR. https://github.com/trinodb/trino/pull/24512/files#diff-705548e3717786bbc076aba181f1eca081ec69200050c18100bfa959e05095dfR357
1757e4d
to
b567ebc
Compare
Description
Fixes #18625
Release notes