The dremio setup we have is with below details:-
Dremio build :- 2.0.5-201806021755260067-767cfb5-mapr Community edition
We are able to fetch data from several hive external tables with underlying parquet data in hdfs. However while querying few hive external tables we see IndexOutOfBoundsException being thrown. Stacktrace details as below. On the same tables on which we get this exception we are able to do count(*) though. Also the same queries on these hive tables are running successfully from hive shell. Please let us know if any further information is needed to rectify this issue.
Questions:-
- Any memory buffer configurations which can overcome this issue.
- Any difference in parquet jars version used by dremio versus what is used by the parquet files in the underlying hive external table which can cause this issue
2018-09-05 15:21:14,014 [e0 - 24700b96-5149-d5b1-b210-df1fcef3aa00:frag:0:0] INFO c.d.e.s.parquet2.ParquetRowiseReader - User Error Occurred [ErrorId: f763bb78-bfde-4ed7-b69a-ecacdeabe072]
com.dremio.common.exceptions.UserException: Failed to read data from parquet file
at com.dremio.common.exceptions.UserException$Builder.build(UserException.java:746) ~[dremio-common-2.0.5-201806021755260067-767cfb5-mapr.jar:2.0.5-201806021755260067-767cfb5-mapr]
at com.dremio.exec.store.parquet2.ParquetRowiseReader.next(ParquetRowiseReader.java:380) [dremio-sabot-kernel-2.0.5-201806021755260067-767cfb5-mapr.jar:2.0.5-201806021755260067-767cfb5-mapr]
at com.dremio.exec.store.parquet.UnifiedParquetReader.next(UnifiedParquetReader.java:220) [dremio-sabot-kernel-2.0.5-201806021755260067-767cfb5-mapr.jar:2.0.5-201806021755260067-767cfb5-mapr]
at com.dremio.exec.store.hive.exec.FileSplitParquetRecordReader.next(FileSplitParquetRecordReader.java:178) [dremio-hive-plugin-2.0.5-201806021755260067-767cfb5-mapr.jar:2.0.5-201806021755260067-767cfb5-mapr]
at com.dremio.exec.store.dfs.implicit.AdditionalColumnsRecordReader.next(AdditionalColumnsRecordReader.java:83) [dremio-sabot-kernel-2.0.5-201806021755260067-767cfb5-mapr.jar:2.0.5-201806021755260067-767cfb5-mapr]
at com.dremio.sabot.op.scan.ScanOperator.outputData(ScanOperator.java:208) [dremio-sabot-kernel-2.0.5-201806021755260067-767cfb5-mapr.jar:2.0.5-201806021755260067-767cfb5-mapr]
at com.dremio.sabot.driver.SmartOp$SmartProducer.outputData(SmartOp.java:518) [dremio-sabot-kernel-2.0.5-201806021755260067-767cfb5-mapr.jar:2.0.5-201806021755260067-767cfb5-mapr]
at com.dremio.sabot.driver.StraightPipe.pump(StraightPipe.java:56) [dremio-sabot-kernel-2.0.5-201806021755260067-767cfb5-mapr.jar:2.0.5-201806021755260067-767cfb5-mapr]
at com.dremio.sabot.driver.Pipeline.doPump(Pipeline.java:82) [dremio-sabot-kernel-2.0.5-201806021755260067-767cfb5-mapr.jar:2.0.5-201806021755260067-767cfb5-mapr]
at com.dremio.sabot.driver.Pipeline.pumpOnce(Pipeline.java:72) [dremio-sabot-kernel-2.0.5-201806021755260067-767cfb5-mapr.jar:2.0.5-201806021755260067-767cfb5-mapr]
at com.dremio.sabot.exec.fragment.FragmentExecutor$DoAsPumper.run(FragmentExecutor.java:291) [dremio-sabot-kernel-2.0.5-201806021755260067-767cfb5-mapr.jar:2.0.5-201806021755260067-767cfb5-mapr]
at com.dremio.sabot.exec.fragment.FragmentExecutor$DoAsPumper.run(FragmentExecutor.java:287) [dremio-sabot-kernel-2.0.5-201806021755260067-767cfb5-mapr.jar:2.0.5-201806021755260067-767cfb5-mapr]
at java.security.AccessController.doPrivileged(Native Method) [na:1.8.0_181]
at javax.security.auth.Subject.doAs(Subject.java:422) [na:1.8.0_181]
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1595) [hadoop-common-2.7.0-mapr-1703.jar:na]
at com.dremio.sabot.exec.fragment.FragmentExecutor.run(FragmentExecutor.java:244) [dremio-sabot-kernel-2.0.5-201806021755260067-767cfb5-mapr.jar:2.0.5-201806021755260067-767cfb5-mapr]
at com.dremio.sabot.exec.fragment.FragmentExecutor.access$800(FragmentExecutor.java:84) [dremio-sabot-kernel-2.0.5-201806021755260067-767cfb5-mapr.jar:2.0.5-201806021755260067-767cfb5-mapr]
at com.dremio.sabot.exec.fragment.FragmentExecutor$AsyncTaskImpl.run(FragmentExecutor.java:580) [dremio-sabot-kernel-2.0.5-201806021755260067-767cfb5-mapr.jar:2.0.5-201806021755260067-767cfb5-mapr]
at com.dremio.sabot.task.AsyncTaskWrapper.run(AsyncTaskWrapper.java:107) [dremio-sabot-kernel-2.0.5-201806021755260067-767cfb5-mapr.jar:2.0.5-201806021755260067-767cfb5-mapr]
at com.dremio.sabot.task.slicing.SlicingThread.run(SlicingThread.java:71) [dremio-extra-sabot-scheduler-2.0.5-201806021755260067-767cfb5-mapr.jar:2.0.5-201806021755260067-767cfb5-mapr]
Caused by: java.lang.IndexOutOfBoundsException: null
at io.netty.buffer.EmptyByteBuf.checkIndex(EmptyByteBuf.java:1054) ~[netty-buffer-4.1.17.Final.jar:4.1.17.Final]
at io.netty.buffer.EmptyByteBuf.setBytes(EmptyByteBuf.java:487) ~[netty-buffer-4.1.17.Final.jar:4.1.17.Final]
at io.netty.buffer.DuplicatedByteBuf.setBytes(DuplicatedByteBuf.java:337) ~[netty-buffer-4.1.17.Final.jar:4.1.17.Final]
at io.netty.buffer.WrappedByteBuf.setBytes(WrappedByteBuf.java:478) ~[netty-buffer-4.1.17.Final.jar:4.1.17.Final]
at io.netty.buffer.UnsafeDirectLittleEndian.setBytes(UnsafeDirectLittleEndian.java:34) ~[arrow-memory-0.8.0-201804280314010062-9a17ead-dremio203.jar:4.1.17.Final]
at io.netty.buffer.ArrowBuf.setBytes(ArrowBuf.java:937) ~[arrow-memory-0.8.0-201804280314010062-9a17ead-dremio203.jar:4.1.17.Final]
at org.apache.arrow.vector.BaseNullableVariableWidthVector.setBytes(BaseNullableVariableWidthVector.java:1203) ~[arrow-vector-0.8.0-201804280314010062-9a17ead-dremio203.jar:0.8.0-201804280314010062-9a17ead-dremio203]
at org.apache.arrow.vector.BaseNullableVariableWidthVector.fillHoles(BaseNullableVariableWidthVector.java:1190) ~[arrow-vector-0.8.0-201804280314010062-9a17ead-dremio203.jar:0.8.0-201804280314010062-9a17ead-dremio203]
at org.apache.arrow.vector.BaseNullableVariableWidthVector.setValueCount(BaseNullableVariableWidthVector.java:879) ~[arrow-vector-0.8.0-201804280314010062-9a17ead-dremio203.jar:0.8.0-201804280314010062-9a17ead-dremio203]
at org.apache.arrow.vector.complex.MapVector.setValueCount(MapVector.java:312) ~[arrow-vector-0.8.0-201804280314010062-9a17ead-dremio203.jar:0.8.0-201804280314010062-9a17ead-dremio203]
at org.apache.arrow.vector.complex.impl.SingleMapWriter.setValueCount(SingleMapWriter.java:339) ~[arrow-vector-0.8.0-201804280314010062-9a17ead-dremio203.jar:0.8.0-201804280314010062-9a17ead-dremio203]
at org.apache.arrow.vector.complex.impl.VectorContainerWriter.setValueCount(VectorContainerWriter.java:90) ~[dremio-sabot-kernel-2.0.5-201806021755260067-767cfb5-mapr.jar:0.8.0-201804280314010062-9a17ead-dremio203]
at com.dremio.exec.store.parquet2.ParquetRowiseReader.next(ParquetRowiseReader.java:360) [dremio-sabot-kernel-2.0.5-201806021755260067-767cfb5-mapr.jar:2.0.5-201806021755260067-767cfb5-mapr]
… 18 common frames omitted