Data type not available

I’m running Dremio 3.3.2 on Mac with hadoop on a remote server. I’ve tried loading a large txt file into Dremio but I get the following error:
sun.misc.Unsafe or java.nio.DirectByteBuffer.(long, int) not available

Here’s a sample line from the csv file
2020-11-30,9,-0.46920672,1.2600318005331526,-23,-28281,
1126227866,5695566057890562539,2,EB,XWU,9LHV,RLN2A,OH4NJN,4R5V1X1,5BE4PK39,UXLHQMZD7,0DJQ4LSHRR,AETJ6VXS53O,I5XPMXLD4TMW,PNWB7DDWZQ34H,5S6GUB70DBMOKC,YPEGIQXCMI8ALUL,VSH9JHFXKSNHI5Q0,S,O,Z,X,IDRX,UZCD5G,XYAHX,20SXMA2I,NWSHD1M,OGRT8,3W589IGML,D11,B03R98,67Y2UW,55D0ILLHBF6U0N,FERA

Here’s the server.log

2020-11-30 23:29:06,779 [qtp1250176650-230] ERROR c.d.d.server.GenericExceptionMapper - Unexpected exception when processing POST http://localhost:9047/apiv2/source/Hadoop%20/file_preview/data/factTable.csv : java.lang.UnsupportedOperationException: sun.misc.Unsafe or java.nio.DirectByteBuffer.(long, int) not available
java.lang.UnsupportedOperationException: sun.misc.Unsafe or java.nio.DirectByteBuffer.(long, int) not available
at io.netty.util.internal.PlatformDependent.directBuffer(PlatformDependent.java:399) ~[netty-common-4.1.22.Final.jar:4.1.22.Final]
at io.netty.buffer.NettyArrowBuf.getDirectBuffer(NettyArrowBuf.java:243) ~[arrow-memory-0.14.0-20190718172626-fa1a62d422-dremio.jar:4.1.22.Final]
at io.netty.buffer.NettyArrowBuf.nioBuffer(NettyArrowBuf.java:233) ~[arrow-memory-0.14.0-20190718172626-fa1a62d422-dremio.jar:4.1.22.Final]
at io.netty.buffer.ArrowBuf.nioBuffer(ArrowBuf.java:245) ~[arrow-memory-0.14.0-20190718172626-fa1a62d422-dremio.jar:4.1.22.Final]
at com.dremio.exec.store.easy.text.compliant.TextInput.(TextInput.java:142) ~[dremio-sabot-kernel-3.3.2-201908142136370993-d60145d.jar:3.3.2-201908142136370993-d60145d]
at com.dremio.exec.store.easy.text.compliant.CompliantTextRecordReader.readFirstLineForColumnNames(CompliantTextRecordReader.java:159) ~[dremio-sabot-kernel-3.3.2-201908142136370993-d60145d.jar:3.3.2-201908142136370993-d60145d]
at com.dremio.exec.store.easy.text.compliant.CompliantTextRecordReader.generateColumnNames(CompliantTextRecordReader.java:241) ~[dremio-sabot-kernel-3.3.2-201908142136370993-d60145d.jar:3.3.2-201908142136370993-d60145d]
at com.dremio.exec.store.easy.text.compliant.CompliantTextRecordReader.setup(CompliantTextRecordReader.java:116) ~[dremio-sabot-kernel-3.3.2-201908142136370993-d60145d.jar:3.3.2-201908142136370993-d60145d]
at com.dremio.dac.model.sources.FormatTools.getData(FormatTools.java:332) ~[dremio-dac-backend-3.3.2-201908142136370993-d60145d.jar:3.3.2-201908142136370993-d60145d]
at com.dremio.dac.model.sources.FormatTools.previewData(FormatTools.java:267) ~[dremio-dac-backend-3.3.2-201908142136370993-d60145d.jar:3.3.2-201908142136370993-d60145d]
at com.dremio.dac.resource.SourceResource.previewFileFormat(SourceResource.java:297) ~[dremio-dac-backend-3.3.2-201908142136370993-d60145d.jar:3.3.2-201908142136370993-d60145d]
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
at java.base/java.lang.reflect.Method.invoke(Method.java:564) ~[na:na]
at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81) ~[jersey-server-2.25.1.jar:na]
at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:144) ~[jersey-server-2.25.1.jar:na]
at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:161) ~[jersey-server-2.25.1.jar:na]
at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$TypeOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:205) ~[jersey-server-2.25.1.jar:na]
at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:99) ~[jersey-server-2.25.1.jar:na]
at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:389) ~[jersey-server-2.25.1.jar:na]
at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:347) ~[jersey-server-2.25.1.jar:na]
at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:102) ~[jersey-server-2.25.1.jar:na]
at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:326) ~[jersey-server-2.25.1.jar:na]
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271) ~[jersey-common-2.25.1.jar:na]
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267) ~[jersey-common-2.25.1.jar:na]
at org.glassfish.jersey.internal.Errors.process(Errors.java:315) ~[jersey-common-2.25.1.jar:na]
at org.glassfish.jersey.internal.Errors.process(Errors.java:297) ~[jersey-common-2.25.1.jar:na]
at org.glassfish.jersey.internal.Errors.process(Errors.java:267) ~[jersey-common-2.25.1.jar:na]
at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317) ~[jersey-common-2.25.1.jar:na]
at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:305) ~[jersey-server-2.25.1.jar:na]
at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1154) ~[jersey-server-2.25.1.jar:na]
at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:473) ~[jersey-container-servlet-core-2.25.1.jar:na]
at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:427) ~[jersey-container-servlet-core-2.25.1.jar:na]
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:388) ~[jersey-container-servlet-core-2.25.1.jar:na]
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:341) ~[jersey-container-servlet-core-2.25.1.jar:na]
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:228) ~[jersey-container-servlet-core-2.25.1.jar:na]
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:873) ~[jetty-servlet-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1623) ~[jetty-servlet-9.4.15.v20190215.jar:9.4.15.v20190215]
at com.dremio.dac.server.SecurityHeadersFilter.doFilter(SecurityHeadersFilter.java:52) ~[dremio-dac-backend-3.3.2-201908142136370993-d60145d.jar:3.3.2-201908142136370993-d60145d]
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1610) ~[jetty-servlet-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.servlets.GzipFilter.doFilter(GzipFilter.java:51) ~[jetty-servlets-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1610) ~[jetty-servlet-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:540) ~[jetty-servlet-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255) ~[jetty-server-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1345) ~[jetty-server-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203) ~[jetty-server-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:480) ~[jetty-servlet-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201) ~[jetty-server-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1247) ~[jetty-server-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144) ~[jetty-server-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.server.handler.RequestLogHandler.handle(RequestLogHandler.java:56) ~[jetty-server-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132) ~[jetty-server-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.server.Server.handle(Server.java:502) ~[jetty-server-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:370) ~[jetty-server-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:267) ~[jetty-server-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305) ~[jetty-io-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103) ~[jetty-io-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117) ~[jetty-io-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333) ~[jetty-util-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310) ~[jetty-util-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168) ~[jetty-util-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126) ~[jetty-util-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366) ~[jetty-util-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765) ~[jetty-util-9.4.15.v20190215.jar:9.4.15.v20190215]
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683) ~[jetty-util-9.4.15.v20190215.jar:9.4.15.v20190215]
at java.base/java.lang.Thread.run(Thread.java:832) ~[na:na]

@maxjpowers

When you say load a large text file to Dremio, are you promoting via a HDFS source? Are you able to promote other smaller CSV files? Any reason you are a very old version of Dremio?

Are you using JDK 11 by any chance?

I’m using an old version of Dremio as it’s the latest supported on mac and port-forwarding on my remote machine (holding the data) wasn’t working. I’ve tried with another file getting the same error, here is my HDFS file structure:
-rw-r–r-- 1 root supergroup 19955942839 2020-12-01 01:09 /data/factTable.txt
-rw-r–r-- 1 root supergroup 3285 2020-12-01 12:19 /data/test1.txt
with test1.txt being:
2020, 5040
so I see no reason why this can’t be parsed. It looks like a data type error. My JDK is
/Library/Java/JavaVirtualMachines/jdk-14.0.1.jdk/Contents/Home

@maxjpowers

We currently support JDK 8, support for other JDK versions are coming, next will be JDK 11

Thanks
Bali