[ 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)