[
https://issues.apache.org/jira/browse/IMPALA-13888?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18007589#comment-18007589
]
ASF subversion and git services commented on IMPALA-13888:
----------------------------------------------------------
Commit a6ad1392da0ed7f43195b578f0433cda84b4bdc5 in impala's branch
refs/heads/master from Daniel Becker
[ https://gitbox.apache.org/repos/asf?p=impala.git;h=a6ad1392d ]
IMPALA-13888: LEFT ANTI JOIN is not working with Iceberg V2 tables on the right
side
If an Iceberg table contains delete files, queries where it is on the
right side of a left anti-join fail:
select *
from alltypes a
LEFT ANTI JOIN
iceberg_v2_positional_update_all_rows b
ON a.id = b.i;
AnalysisException: Illegal column/field reference
'b.input__file__name' of semi-/anti-joined table 'b'
This is because semi-joined tuples need to be made visible explicitly in
order for paths pointing inside them to be resolvable, see
Analyzer::resolvePaths().
This commit adds code to IcebergScanPlanner to make the tuple containing
the virtual fields visible if it is semi-joined.
Testing:
- Added regressions tets in iceberg-v2-read-position-deletes.test.
Change-Id: I19de9c7c7ed1d61cde281d270c4cc3ce0b7c582d
Reviewed-on: http://gerrit.cloudera.org:8080/23147
Reviewed-by: Impala Public Jenkins <[email protected]>
Tested-by: Impala Public Jenkins <[email protected]>
> LEFT ANTI JOIN is not working with Iceberg V2 tables on the right side
> ----------------------------------------------------------------------
>
> Key: IMPALA-13888
> URL: https://issues.apache.org/jira/browse/IMPALA-13888
> Project: IMPALA
> Issue Type: Bug
> Components: Frontend
> Reporter: Zoltán Borók-Nagy
> Assignee: Daniel Becker
> Priority: Major
> Labels: impala-iceberg
>
> Repro:
> {noformat}
> select *
> from alltypes a LEFT ANTI JOIN iceberg_v2_positional_update_all_rows b
> ON a.id = b.i;
> AnalysisException: Illegal column/field reference 'b.input__file__name' of
> semi-/anti-joined table 'b'{noformat}
> The followings work as expected
> {noformat}
> select *
> from iceberg_v2_positional_update_all_rows a LEFT ANTI JOIN
> iceberg_partitioned b
> ON a.i = b.id;
> select *
> from iceberg_partitioned a LEFT ANTI JOIN iceberg_partitioned b
> ON a.id = b.id;{noformat}
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]