Uploaded image for project: 'Hive'
  1. Hive
  2. HIVE-13284

Make ORC Reader resilient to 0 length files

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.1.0
    • None
    • None
    • None

    Description

      HIVE-13040 creates 0 length ORC files. Reading such files will throw following exception. ORC is resilient to corrupt footers but not 0 length files.

      Processing data file file:/app/warehouse/concat_incompat/000000_0 [length: 0]
      Exception in thread "main" java.lang.IndexOutOfBoundsException
      	at java.nio.Buffer.checkIndex(Buffer.java:540)
      	at java.nio.HeapByteBuffer.get(HeapByteBuffer.java:139)
      	at org.apache.hadoop.hive.ql.io.orc.ReaderImpl.extractMetaInfoFromFooter(ReaderImpl.java:510)
      	at org.apache.hadoop.hive.ql.io.orc.ReaderImpl.<init>(ReaderImpl.java:361)
      	at org.apache.hadoop.hive.ql.io.orc.OrcFile.createReader(OrcFile.java:83)
      	at org.apache.hadoop.hive.ql.io.orc.FileDump.getReader(FileDump.java:239)
      	at org.apache.hadoop.hive.ql.io.orc.FileDump.printMetaDataImpl(FileDump.java:312)
      	at org.apache.hadoop.hive.ql.io.orc.FileDump.printMetaData(FileDump.java:291)
      	at org.apache.hadoop.hive.ql.io.orc.FileDump.main(FileDump.java:138)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:497)
      	at org.apache.hadoop.util.RunJar.run(RunJar.java:221)
      	at org.apache.hadoop.util.RunJar.main(RunJar.java:136)
      

      Attachments

        Activity

          People

            prasanth_j Prasanth Jayachandran
            prasanth_j Prasanth Jayachandran
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: