[ https://issues.apache.org/jira/browse/HIVE-13403?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15433573#comment-15433573 ]
Eugene Koifman commented on HIVE-13403: --------------------------------------- # AbstractRecordWriter.newBatch() - what is the point of the loop that does _updaters.add(bucket, null)_. Why not create the ArrayList of the right size? # TestStreaming.testBucketing() - This comment seems wrong now... _// no data for bucket 3 -- expect 0 length bucket file_ ## perhaps assert that there is no bucket #2 in actual1 collection? # TestStreaming.testFileDumpCorruptDataFiles() - maybe _} else if (file.contains("bucket_00002")) {_ should now be removed or perhaps in this branch assertFalse() to indicate we don't expect this bucket? otherwise LGTM > Make Streaming API not create empty buckets (at least as an option) > ------------------------------------------------------------------- > > Key: HIVE-13403 > URL: https://issues.apache.org/jira/browse/HIVE-13403 > Project: Hive > Issue Type: Bug > Components: HCatalog, Transactions > Affects Versions: 1.3.0 > Reporter: Eugene Koifman > Assignee: Wei Zheng > Priority: Critical > Attachments: HIVE-13403.1.patch, HIVE-13403.2.patch, > HIVE-13403.3.patch, HIVE-13403.4.patch > > > as of HIVE-11983, when a TransactionBatch is opened in StreamingAPI, a full > compliment of bucket files (AbstractRecordWriter.createRecordUpdaters()) is > created on disk even though some may end up receiving no data. > It would be better to create them on demand and not clog the FS. > Tez can handle missing (empty) buckets and on MR bucket join algorithms will > check if all buckets are there and bail out if not. -- This message was sent by Atlassian JIRA (v6.3.4#6332)