[
https://issues.apache.org/jira/browse/HIVE-23349?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17104166#comment-17104166
]
Denys Kuzmenko commented on HIVE-23349:
---------------------------------------
Pushed to master.
[~Marton Bod], [~vpeter], [~pvary] thank you for the review!
> ACID: Concurrent MERGE INSERT operations produce duplicates
> -----------------------------------------------------------
>
> Key: HIVE-23349
> URL: https://issues.apache.org/jira/browse/HIVE-23349
> Project: Hive
> Issue Type: Bug
> Components: Transactions
> Reporter: Denys Kuzmenko
> Assignee: Denys Kuzmenko
> Priority: Major
> Attachments: HIVE-23349.1.patch, HIVE-23349.2.patch,
> HIVE-23349.3.patch, HIVE-23349.4.patch, HIVE-23349.5.patch, HIVE-23349.6.patch
>
>
> 2 concurrent MERGE INSERT operations generate duplicates due to lack of
> locking.
> MERGE INSERT is treated as regular INSERT, it acquires SHARED_READ lock that
> doesn't prevent other INSERTs. We should use EXCLUSIVE lock here or
> EXCL_WRITE if hive.txn.write.xlock=false;
> {code}
> create table target (a int, b int) stored as orc TBLPROPERTIES
> ('transactional'='true')");
> insert into target values (1,2), (3,4)
> create table source (a int, b int)
> {code}
> execute in parallel:
> {code}
> insert into source values (5,6), (7,8)
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)