[ 
https://issues.apache.org/jira/browse/HIVE-17547?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eugene Koifman resolved HIVE-17547.
-----------------------------------
    Resolution: Not A Problem

since commit() of the txn happens after all tasks are complete, no one will 
read contents of this delta until it has all the files

> MoveTask for Acid tables race condition
> ---------------------------------------
>
>                 Key: HIVE-17547
>                 URL: https://issues.apache.org/jira/browse/HIVE-17547
>             Project: Hive
>          Issue Type: Bug
>          Components: Transactions
>    Affects Versions: 1.0.0
>            Reporter: Eugene Koifman
>            Assignee: Eugene Koifman
>            Priority: Major
>
> Consider Hive.moveAcidFiles()
> it starts out with something like
> {noformat}
>           └── -ext-10000
>             │   └── 000000_0
>             │       ├── _orc_acid_version
>             │       └── delta_0000019_0000019
>             │           └── bucket_00000
>             │   └── 000000_1
>             │       ├── _orc_acid_version
>             │       └── delta_0000019_0000019
>             │           └── bucket_00001
> {noformat}
> for a write to a bucketed table.
> The "move" handles each 000000_N separately.  The first on creates 
> delta_0000019_0000019 under the table/partition dir, the others just add 
> bucket_0000N there.
> That means there is a small window where someone may "ls 
> table/part/delta_0000019_0000019" and not see all the buckets.
> Once Acid writes directly to the final location (a la MM tables) this issue 
> resolves automatically since txn 19 is uncommitted until everything is 
> written.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to