Eugene Koifman created HIVE-18429:
-------------------------------------
Summary: Compaction should handle a case when it produces no output
Key: HIVE-18429
URL: https://issues.apache.org/jira/browse/HIVE-18429
Project: Hive
Issue Type: Bug
Components: Transactions
Affects Versions: 1.0.0
Reporter: Eugene Koifman
Assignee: Eugene Koifman
Suppose we start with empty delta_8_8 and delta_9_9 and compaction runs.
It will currently produce an MR job with 0 splits and so
{{CompactorMR.TMP_LOCATION}} never gets created. This causes
{{CompactorOutputCommitted.commitJob()}} to fail when it tries to do
{{FileStatus[] contents = fs.listStatus(tmpLocation);}} since tmpLocation
doesn't exist.
If compactor fails to produce delta_8_9 here it will fail to do further
compaction unless new delta with data is created.
If the number of empty deltas is > than
HiveConf.ConfVars.COMPACTOR_MAX_NUM_DELTA, compaction will not be able to
proceed at all.
It should produce a delta_8_9 in this case even if it's empty.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)