[ 
https://issues.apache.org/jira/browse/IMPALA-12787?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17815210#comment-17815210
 ] 

ASF subversion and git services commented on IMPALA-12787:
----------------------------------------------------------

Commit 68e61c1aabacee5da37b1f66842d8a2354d0e215 in impala's branch 
refs/heads/master from Zoltan Borok-Nagy
[ https://gitbox.apache.org/repos/asf?p=impala.git;h=68e61c1aa ]

IMPALA-12787: Concurrent DELETE and UPDATE operations on Iceberg tables can be 
problematic

If an UPDATE operation runs concurrently with a DELETE operation, and
the DELETE commits first, then the UPDATE can revive deleted rows. This
is because only RowDelta.validateNoConflictingDataFiles() is called, but
RowDelta.validateNoConflictingDeleteFiles() is not. Therefore, the
UPDATE operation ignores the concurrently written delete files.

This patch adds RowDelta.validateNoConflictingDeleteFiles() to UPDATE
operations.

Testing
 * added a stress test to validate concurrent DELETE and UPDATE
    operations

Change-Id: I9e581ea17fa8f6ccd9c87aaad1281bb694079f6e
Reviewed-on: http://gerrit.cloudera.org:8080/20999
Reviewed-by: Impala Public Jenkins <impala-public-jenk...@cloudera.com>
Tested-by: Impala Public Jenkins <impala-public-jenk...@cloudera.com>


> Concurrent DELETE and UPDATE operations on Iceberg tables can be problematic
> ----------------------------------------------------------------------------
>
>                 Key: IMPALA-12787
>                 URL: https://issues.apache.org/jira/browse/IMPALA-12787
>             Project: IMPALA
>          Issue Type: Bug
>          Components: Catalog
>            Reporter: Zoltán Borók-Nagy
>            Assignee: Zoltán Borók-Nagy
>            Priority: Major
>              Labels: impala-iceberg
>
> If an UPDATE operation runs concurrently with a DELETE operation, and the 
> DELETE commits first, then the UPDATE can revive deleted rows.
> This is because only RowDelta.validateNoConflictingDataFiles() is called, but 
> RowDelta.validateNoConflictingDeleteFiles() is not. Therefore, the UPDATE 
> operation ignores the concurrently written delete files.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-all-unsubscr...@impala.apache.org
For additional commands, e-mail: issues-all-h...@impala.apache.org

Reply via email to