cancel
Showing results for 
Search instead for 
Did you mean: 
Data Engineering
cancel
Showing results for 
Search instead for 
Did you mean: 

JDBC Error: Error occured while deserializing arrow data

mattmunz
New Contributor III

I am getting the following error in my Java application.

java.sql.SQLException: [Databricks][DatabricksJDBCDriver](500618) Error occured while deserializing arrow data: sun.misc.Unsafe or java.nio.DirectByteBuffer.<init>(long, int) not available

I believe this is the same issue described here.

Java version:

java version "18.0.1.1" 2022-04-22
Java(TM) SE Runtime Environment (build 18.0.1.1+2-6)
Java HotSpot(TM) 64-Bit Server VM (build 18.0.1.1+2-6, mixed mode, sharing)

I am using the recommended flag:

-Dio.netty.tryReflectionSetAccessible=true

Is the source code for the JDBC driver available? Any suggestions on how to fix this would be appreciated. Also if there is an example app that uses the JDBC driver, I'd be interested in trying that as well. Thanks!

1 REPLY 1

User16753725469
Contributor II

Please try adding the below(--add-opens flag) java command line flags in your jvm call:

% javac -classpath SparkJDBC42Example.jar:. jdbc_example.java                   

% java --add-opens=java.base/java.nio=ALL-UNNAMED -classpath SparkJDBC42Example.jar:. jdbc_example

Welcome to Databricks Community: Lets learn, network and celebrate together

Join our fast-growing data practitioner and expert community of 80K+ members, ready to discover, help and collaborate together while making meaningful connections. 

Click here to register and join today! 

Engage in exciting technical discussions, join a group with your peers and meet our Featured Members.