[ 
https://issues.apache.org/jira/browse/HIVE-21025?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16943705#comment-16943705
 ] 

Mustafa Iman commented on HIVE-21025:
-------------------------------------

Is there an example of such cases? I tried creating text, orc and avro external 
tables having partitioning column in the data. Hive overlooks such data and 
runs without any errors in my tests.

> LLAP IO fails on read if partition column is included in the table and the 
> query has a predicate on the partition column
> ------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HIVE-21025
>                 URL: https://issues.apache.org/jira/browse/HIVE-21025
>             Project: Hive
>          Issue Type: Bug
>          Components: llap
>    Affects Versions: 2.3.4
>            Reporter: Eugene Koifman
>            Assignee: Mustafa Iman
>            Priority: Major
>
> Hive doesn't officially support the case when a partitioning column is also 
> included in the data itself, though it works in some cases. Hive would never 
> write a data file with partition column in it but this can happen for 
> external tables where data is added by the end user.
> Consider improving validation (at least for schema-aware files) on read to 
> produce a better error than {{ArrayIndexOutOfBoundsException}}
> {code:java}
> Caused by: java.lang.ArrayIndexOutOfBoundsException 
> ], TaskAttempt 3 failed, info=[Error: Error while running task ( failure ) : 
> attempt_1539023000868_24675_3_01_000007_3:java.lang.RuntimeException: 
> org.apache.hadoop.hive.ql.metadata.HiveException: java.io.IOException: 
> java.io.IOException: java.lang.ArrayIndexOutOfBoundsException 
> at 
> org.apache.hadoop.hive.ql.exec.tez.TezProcessor.initializeAndRunProcessor(TezProcessor.java:218)
>  
> at org.apache.hadoop.hive.ql.exec.tez.TezProcessor.run(TezProcessor.java:172) 
> at 
> org.apache.tez.runtime.LogicalIOProcessorRuntimeTask.run(LogicalIOProcessorRuntimeTask.java:370)
>  
> at 
> org.apache.tez.runtime.task.TaskRunner2Callable$1.run(TaskRunner2Callable.java:73)
>  
> at 
> org.apache.tez.runtime.task.TaskRunner2Callable$1.run(TaskRunner2Callable.java:61)
>  
> at java.security.AccessController.doPrivileged(Native Method) 
> at javax.security.auth.Subject.doAs(Subject.java:422) 
> at 
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1869)
>  
> at 
> org.apache.tez.runtime.task.TaskRunner2Callable.callInternal(TaskRunner2Callable.java:61)
>  
> at 
> org.apache.tez.runtime.task.TaskRunner2Callable.callInternal(TaskRunner2Callable.java:37)
>  
> at org.apache.tez.common.CallableWithNdc.call(CallableWithNdc.java:36) 
> at 
> org.apache.hadoop.hive.llap.daemon.impl.StatsRecordingThreadPool$WrappedCallable.call(StatsRecordingThreadPool.java:110)
>  
> at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
> at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>  
> at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>  
> at java.lang.Thread.run(Thread.java:745) 
> Caused by: org.apache.hadoop.hive.ql.metadata.HiveException: 
> java.io.IOException: java.io.IOException: 
> java.lang.ArrayIndexOutOfBoundsException 
> at 
> org.apache.hadoop.hive.ql.exec.tez.MapRecordSource.pushRecord(MapRecordSource.java:80)
>  
> at 
> org.apache.hadoop.hive.ql.exec.tez.MapRecordProcessor.run(MapRecordProcessor.java:419)
>  
> at 
> org.apache.hadoop.hive.ql.exec.tez.TezProcessor.initializeAndRunProcessor(TezProcessor.java:189)
>  
> ... 15 more 
> Caused by: java.io.IOException: java.io.IOException: 
> java.lang.ArrayIndexOutOfBoundsException 
> 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:355)
>  
> at 
> org.apache.hadoop.hive.ql.io.HiveRecordReader.doNext(HiveRecordReader.java:79)
>  
> at 
> org.apache.hadoop.hive.ql.io.HiveRecordReader.doNext(HiveRecordReader.java:33)
>  
> at 
> org.apache.hadoop.hive.ql.io.HiveContextAwareRecordReader.next(HiveContextAwareRecordReader.java:116)
>  
> at 
> org.apache.hadoop.mapred.split.TezGroupedSplitsInputFormat$TezGroupedSplitsRecordReader.next(TezGroupedSplitsInputFormat.java:151)
>  
> at org.apache.tez.mapreduce.lib.MRReaderMapred.next(MRReaderMapred.java:116) 
> at 
> org.apache.hadoop.hive.ql.exec.tez.MapRecordSource.pushRecord(MapRecordSource.java:68)
>  
> ... 17 more 
> Caused by: java.io.IOException: java.lang.ArrayIndexOutOfBoundsException 
> at 
> org.apache.hadoop.hive.llap.io.api.impl.LlapRecordReader.rethrowErrorIfAny(LlapRecordReader.java:355)
>  
> at 
> org.apache.hadoop.hive.llap.io.api.impl.LlapRecordReader.nextCvb(LlapRecordReader.java:310)
>  
> at 
> org.apache.hadoop.hive.llap.io.api.impl.LlapRecordReader.next(LlapRecordReader.java:250)
>  
> at 
> org.apache.hadoop.hive.llap.io.api.impl.LlapRecordReader.next(LlapRecordReader.java:67)
>  
> at 
> org.apache.hadoop.hive.ql.io.HiveContextAwareRecordReader.doNext(HiveContextAwareRecordReader.java:350)
>  
> ... 23 more 
> Caused by: java.lang.ArrayIndexOutOfBoundsException
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to