Dear Dremio team,
Currently my company is upgrading Dremio from v24.1 to v25.0. And the JDK version also upgrade to JDK11. But we face an issue in Dremio v25 + JDK11. Please kindly help. Thanks in advance.
The issue is:
When we run the junit test cases, it will report below error:
11:42:51.902 [UserServer-1] ERROR c.d.exec.rpc.RpcExceptionHandler - Exception in RPC communication. Connection: /10.25.137.242:31343 <--> /10.25.137.242:57506 (user client). Closing connection.
java.lang.UnsupportedOperationException: sun.misc.Unsafe or java.nio.DirectByteBuffer.<init>(long, int) not available
at io.netty.util.internal.PlatformDependent.directBuffer(PlatformDependent.java:532)
at io.netty.buffer.NettyArrowBuf.getDirectBuffer(NettyArrowBuf.java:267)
at io.netty.buffer.NettyArrowBuf.nioBuffer(NettyArrowBuf.java:245)
at io.netty.buffer.NettyArrowBuf.nioBuffers(NettyArrowBuf.java:229)
at io.netty.buffer.NettyArrowBuf.setBytes(NettyArrowBuf.java:389)
at io.netty.buffer.MutableWrappedByteBuf.setBytes(MutableWrappedByteBuf.java:373)
at io.netty.buffer.ExpandableByteBuf.setBytes(ExpandableByteBuf.java:27)
at io.netty.buffer.AbstractByteBuf.writeBytes(AbstractByteBuf.java:1132)
at io.netty.channel.socket.nio.NioSocketChannel.doReadBytes(NioSocketChannel.java:357)
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:151)
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:788)
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724)
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at java.base/java.lang.Thread.run(Thread.java:834)
11:42:51.904 [Client-1] ERROR c.d.exec.rpc.RpcExceptionHandler - Exception in RPC communication. Connection: null <--> null (user client). Closing connection.
java.lang.UnsupportedOperationException: sun.misc.Unsafe or java.nio.DirectByteBuffer.<init>(long, int) not available
at io.netty.util.internal.PlatformDependent.directBuffer(PlatformDependent.java:532)
at io.netty.buffer.NettyArrowBuf.getDirectBuffer(NettyArrowBuf.java:267)
at io.netty.buffer.NettyArrowBuf.nioBuffer(NettyArrowBuf.java:245)
at io.netty.buffer.NettyArrowBuf.nioBuffers(NettyArrowBuf.java:229)
at io.netty.buffer.NettyArrowBuf.setBytes(NettyArrowBuf.java:389)
at io.netty.buffer.MutableWrappedByteBuf.setBytes(MutableWrappedByteBuf.java:373)
at io.netty.buffer.ExpandableByteBuf.setBytes(ExpandableByteBuf.java:27)
at io.netty.buffer.AbstractByteBuf.writeBytes(AbstractByteBuf.java:1132)
at io.netty.channel.socket.nio.NioSocketChannel.doReadBytes(NioSocketChannel.java:357)
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:151)
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:788)
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724)
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at java.base/java.lang.Thread.run(Thread.java:834)
com.dremio.exec.rpc.RpcException: HANDSHAKE_COMMUNICATION : [USER]: Channel closed null <--> null (user client)
at com.dremio.exec.client.DremioClient$FutureHandler.connectionFailed(DremioClient.java:909)
at com.dremio.sabot.rpc.user.QueryResultHandler$ChannelClosedHandler.connectionFailed(QueryResultHandler.java:402)
at com.dremio.exec.rpc.BasicClient$ConnectionMultiListener$HandshakeSendListener.failed(BasicClient.java:469)
at com.dremio.exec.rpc.RequestIdMap$RpcListener.setException(RequestIdMap.java:202)
at com.dremio.exec.rpc.RequestIdMap$SetExceptionProcedure.apply(RequestIdMap.java:116)
at com.dremio.exec.rpc.RequestIdMap$SetExceptionProcedure.apply(RequestIdMap.java:106)
at com.carrotsearch.hppc.IntObjectHashMap.forEach(IntObjectHashMap.java:692)
at com.dremio.exec.rpc.RequestIdMap.doNotify(RequestIdMap.java:102)
at com.dremio.exec.rpc.RequestIdMap.channelClosed(RequestIdMap.java:67)
at com.dremio.exec.rpc.RemoteConnection.channelClosed(RemoteConnection.java:207)
at com.dremio.exec.rpc.RpcBus$ChannelClosedHandler.operationComplete(RpcBus.java:246)
at com.dremio.exec.rpc.RpcBus$ChannelClosedHandler.operationComplete(RpcBus.java:228)
at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:590)
at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:557)
at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:492)
at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:636)
at io.netty.util.concurrent.DefaultPromise.setSuccess0(DefaultPromise.java:625)
at io.netty.util.concurrent.DefaultPromise.trySuccess(DefaultPromise.java:105)
at io.netty.channel.DefaultChannelPromise.trySuccess(DefaultChannelPromise.java:84)
at io.netty.channel.AbstractChannel$CloseFuture.setClosed(AbstractChannel.java:1164)
at io.netty.channel.AbstractChannel$AbstractUnsafe.doClose0(AbstractChannel.java:755)
at io.netty.channel.AbstractChannel$AbstractUnsafe.close(AbstractChannel.java:731)
at io.netty.channel.AbstractChannel$AbstractUnsafe.close(AbstractChannel.java:620)
at io.netty.channel.DefaultChannelPipeline$HeadContext.close(DefaultChannelPipeline.java:1352)
at io.netty.channel.AbstractChannelHandlerContext.invokeClose(AbstractChannelHandlerContext.java:755)
at io.netty.channel.AbstractChannelHandlerContext.close(AbstractChannelHandlerContext.java:733)
at io.netty.channel.AbstractChannelHandlerContext.close(AbstractChannelHandlerContext.java:560)
at com.dremio.exec.rpc.RpcExceptionHandler.exceptionCaught(RpcExceptionHandler.java:42)
at io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:346)
at io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:325)
at io.netty.channel.AbstractChannelHandlerContext.fireExceptionCaught(AbstractChannelHandlerContext.java:317)
at io.netty.channel.DefaultChannelPipeline$HeadContext.exceptionCaught(DefaultChannelPipeline.java:1377)
at io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:346)
at io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:325)
at io.netty.channel.DefaultChannelPipeline.fireExceptionCaught(DefaultChannelPipeline.java:907)
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.handleReadException(AbstractNioByteChannel.java:125)
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:177)
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:788)
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724)
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: com.dremio.exec.rpc.ChannelClosedException: [USER]: Channel closed null <--> null (user client)
at com.dremio.exec.rpc.RpcBus$ChannelClosedHandler.operationComplete(RpcBus.java:244)
... 33 more
Please help and advise. Thanks again.
Best Regards,
Yours