Details
-
Bug
-
Status: Closed
-
Critical
-
Resolution: Fixed
-
None
Description
We shaded netty in hive-exec in - https://issues.apache.org/jira/browse/HIVE-23073
This breaks LLAP external client flow on LLAP daemon side -
LLAP daemon stacktrace -
2020-09-09T18:22:13,413 INFO [TezTR-222977_4_0_0_0_0 (4974183244412222977_0004_0_00_000000_0)] llap.LlapOutputFormat: Returning writer for: attempt_4974183244412222977_0004_0_00_000000_0 2020-09-09T18:22:13,419 ERROR [TezTR-222977_4_0_0_0_0 (4974183244412222977_0004_0_00_000000_0)] tez.MapRecordSource: java.lang.NoSuchMethodError: org.apache.arrow.memory.BufferAllocator.buffer(I)Lorg/apache/hive/io/netty/buffer/ArrowBuf; at org.apache.hadoop.hive.llap.WritableByteChannelAdapter.write(WritableByteChannelAdapter.java:96) at org.apache.arrow.vector.ipc.WriteChannel.write(WriteChannel.java:74) at org.apache.arrow.vector.ipc.WriteChannel.write(WriteChannel.java:57) at org.apache.arrow.vector.ipc.WriteChannel.writeIntLittleEndian(WriteChannel.java:89) at org.apache.arrow.vector.ipc.message.MessageSerializer.serialize(MessageSerializer.java:88) at org.apache.arrow.vector.ipc.ArrowWriter.ensureStarted(ArrowWriter.java:130) at org.apache.arrow.vector.ipc.ArrowWriter.writeBatch(ArrowWriter.java:102) at org.apache.hadoop.hive.llap.LlapArrowRecordWriter.write(LlapArrowRecordWriter.java:85) at org.apache.hadoop.hive.llap.LlapArrowRecordWriter.write(LlapArrowRecordWriter.java:46) at org.apache.hadoop.hive.ql.exec.vector.filesink.VectorFileSinkArrowOperator.process(VectorFileSinkArrowOperator.java:137) at org.apache.hadoop.hive.ql.exec.Operator.vectorForward(Operator.java:969) at org.apache.hadoop.hive.ql.exec.vector.VectorSelectOperator.process(VectorSelectOperator.java:158) at org.apache.hadoop.hive.ql.exec.Operator.vectorForward(Operator.java:969) at org.apache.hadoop.hive.ql.exec.TableScanOperator.process(TableScanOperator.java:172) at org.apache.hadoop.hive.ql.exec.vector.VectorMapOperator.deliverVectorizedRowBatch(VectorMapOperator.java:809) at org.apache.hadoop.hive.ql.exec.vector.VectorMapOperator.process(VectorMapOperator.java:842) at org.apache.hadoop.hive.ql.exec.tez.MapRecordSource.processRow(MapRecordSource.java:92) at org.apache.hadoop.hive.ql.exec.tez.MapRecordSource.pushRecord(MapRecordSource.java:76) at org.apache.hadoop.hive.ql.exec.tez.MapRecordProcessor.run(MapRecordProcessor.java:426) at org.apache.hadoop.hive.ql.exec.tez.TezProcessor.initializeAndRunProcessor(TezProcessor.java:267) at org.apache.hadoop.hive.ql.exec.tez.TezProcessor.run(TezProcessor.java:250) at org.apache.tez.runtime.LogicalIOProcessorRuntimeTask.run(LogicalIOProcessorRuntimeTask.java:374) at org.apache.tez.runtime.task.TaskRunner2Callable$1.run(TaskRunner2Callable.java:75) at org.apache.tez.runtime.task.TaskRunner2Callable$1.run(TaskRunner2Callable.java:62) 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:1876) at org.apache.tez.runtime.task.TaskRunner2Callable.callInternal(TaskRunner2Callable.java:62) at org.apache.tez.runtime.task.TaskRunner2Callable.callInternal(TaskRunner2Callable.java:38) at org.apache.tez.common.CallableWithNdc.call(CallableWithNdc.java:36) at org.apache.hadoop.hive.llap.daemon.impl.StatsRecordingThreadPool$WrappedCallable.call(StatsRecordingThreadPool.java:118) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)
Arrow method signature mismatch mainly happens due to the fact that arrow contains some classes which are packaged under io.netty.buffer.* -
io.netty.buffer.ArrowBuf io.netty.buffer.ExpandableByteBuf io.netty.buffer.LargeBuffer io.netty.buffer.MutableWrappedByteBuf io.netty.buffer.PooledByteBufAllocatorL io.netty.buffer.UnsafeDirectLittleEndian
Since we have relocated netty, these classes have also been relocated to org.apache.hive.io.netty.buffer.* and causing NoSuchMethodError.
Attachments
Issue Links
- is caused by
-
HIVE-23073 Shade netty and upgrade to netty 4.1.48.Final
- Closed
- links to