Hello !

I have an HDP 2.2.4.2.(it has normally hive 0.14.0).

I have a ORC table with multiple fields :
###
CREATE TABLE `table1`(
  `field1` varchar(10),
  `field2` varchar(10),
  `field3` date,
  `field4` varchar(8),
  `field5` varchar(64)
PARTITIONED BY (
  `year` string,
  `month` string,
  `day` string)
ROW FORMAT SERDE
  'org.apache.hadoop.hive.ql.io.orc.OrcSerde'
STORED AS INPUTFORMAT
  'org.apache.hadoop.hive.ql.io.orc.OrcInputFormat'
OUTPUTFORMAT
  'org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat'
LOCATION
  'hdfs://<NAMENODE>/apps/hive/warehouse/database1.db/table1'
TBLPROPERTIES (
  'orc.compress'='SNAPPY'
)
###

It is partitioned on year, month and day.

When I perform this HQL query on this table, it works :
SELECT field1
FROM table1

When i perform this HDL query on this table, it does not work :
SELECT field1
FROM table1
GROUP BY field1

In this case, I got the following error message :
###
2016-08-09 10:43:35,090 WARN [main] org.apache.hadoop.mapred.YarnChild:
Exception running child : java.io.IOException: java.io.IOException:
java.io.IOException: Error reading file:
hdfs://<NAMENODE>/apps/hive/warehouse/database1.db/table1/year=2016/month=08/day=08/000000_0
    at
org.apache.hadoop.hive.io.HiveIOExceptionHandlerChain.handleRecordReaderNextException(HiveIOExceptionHandlerChain.java:121)
    at
org.apache.hadoop.hive.io.HiveIOExceptionHandlerUtil.handleRecordReaderNextException(HiveIOExceptionHandlerUtil.java:77)
    at
org.apache.hadoop.hive.shims.HadoopShimsSecure$CombineFileRecordReader.doNextWithExceptionHandler(HadoopShimsSecure.java:273)
    at
org.apache.hadoop.hive.shims.HadoopShimsSecure$CombineFileRecordReader.next(HadoopShimsSecure.java:183)
    at
org.apache.hadoop.mapred.MapTask$TrackedRecordReader.moveToNext(MapTask.java:199)
    at
org.apache.hadoop.mapred.MapTask$TrackedRecordReader.next(MapTask.java:185)
    at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:52)
    at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:450)
    at org.apache.hadoop.mapred.MapTask.run(MapTask.java:343)
    at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:163)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.Subject.doAs(Subject.java:415)
    at
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1628)
    at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:158)
Caused by: java.io.IOException: java.io.IOException: Error reading file:
hdfs://<NAMENODE>/apps/hive/warehouse/database1.db/table1/year=2016/month=08/day=08/000000_0
    at
org.apache.hadoop.hive.io.HiveIOExceptionHandlerChain.handleRecordReaderNextException(HiveIOExceptionHandlerChain.java:121)
    at
org.apache.hadoop.hive.io.HiveIOExceptionHandlerUtil.handleRecordReaderNextException(HiveIOExceptionHandlerUtil.java:77)
    at
org.apache.hadoop.hive.ql.io.HiveContextAwareRecordReader.doNext(HiveContextAwareRecordReader.java:352)
    at
org.apache.hadoop.hive.ql.io.CombineHiveRecordReader.doNext(CombineHiveRecordReader.java:101)
    at
org.apache.hadoop.hive.ql.io.CombineHiveRecordReader.doNext(CombineHiveRecordReader.java:41)
    at
org.apache.hadoop.hive.ql.io.HiveContextAwareRecordReader.next(HiveContextAwareRecordReader.java:115)
    at
org.apache.hadoop.hive.shims.HadoopShimsSecure$CombineFileRecordReader.doNextWithExceptionHandler(HadoopShimsSecure.java:271)
    ... 11 more
Caused by: java.io.IOException: Error reading file:
hdfs://<NAMENODE>/apps/hive/warehouse/database1.db/table1/year=2016/month=08/day=08/000000_0
    at
org.apache.hadoop.hive.ql.io.orc.RecordReaderImpl.next(RecordReaderImpl.java:3185)
    at
org.apache.hadoop.hive.ql.io.orc.OrcInputFormat$OrcRecordReader.next(OrcInputFormat.java:164)
    at
org.apache.hadoop.hive.ql.io.orc.OrcInputFormat$OrcRecordReader.next(OrcInputFormat.java:138)
    at
org.apache.hadoop.hive.ql.io.HiveContextAwareRecordReader.doNext(HiveContextAwareRecordReader.java:347)
    ... 15 more
Caused by: java.io.EOFException: Read past end of RLE integer from
compressed stream Stream for column 1 kind DATA position: 290916 length:
290916 range: 0 offset: 290916 limit: 290916 range 0 = 0 to 290916
uncompressed: 106643 to 106643
    at
org.apache.hadoop.hive.ql.io.orc.RunLengthIntegerReaderV2.readValues(RunLengthIntegerReaderV2.java:56)
    at
org.apache.hadoop.hive.ql.io.orc.RunLengthIntegerReaderV2.next(RunLengthIntegerReaderV2.java:302)
    at
org.apache.hadoop.hive.ql.io.orc.RecordReaderImpl$StringDictionaryTreeReader.next(RecordReaderImpl.java:1664)
    at
org.apache.hadoop.hive.ql.io.orc.RecordReaderImpl$StringTreeReader.next(RecordReaderImpl.java:1402)
    at
org.apache.hadoop.hive.ql.io.orc.RecordReaderImpl$VarcharTreeReader.next(RecordReaderImpl.java:1839)
    at
org.apache.hadoop.hive.ql.io.orc.RecordReaderImpl$StructTreeReader.next(RecordReaderImpl.java:1936)
    at
org.apache.hadoop.hive.ql.io.orc.RecordReaderImpl.next(RecordReaderImpl.java:3174)
    ... 18 more
###


Question1 - Does someone know why I got this error when I do the GROUP BY ?
Question2 - Does the GROUP BY use something in the ORC file 00000_0 ? If
yes, do you know what ?
Question3 - I found the following JIRAs on Internet :
https://issues.apache.org/jira/browse/HIVE-6711, but it is normally solved
in Hive 0.14.0, so I don't think it can be my problem ?
Question4 - I found also this JIRA :
https://issues.apache.org/jira/browse/HIVE-10916, but this file is only 110
MB sized.

I'm open to all suggestion ^_^.

BR.

Tale

Reply via email to