Loading
KNOWLEDGE BASE ARTICLES

Can't find what you're looking for? Ask The Community  

Apache arrow not supported on IBM AIX causing error Java.lang.NoClassDefFoundError for Apache arrow for select query against Snowflake via JDBC driver

In this article, we will provide solution to the error " Java.lang.NoClassDefFoundError for Apache arrow" when fetching data from Snowflake from SAP Business Warehouse (BW) running on IBM AIX 7.2 OS using Snowflake JDBC driver 3.14.4.

September 17, 2024
Issue

Customer environment:

Operating System :IBM AIX 7.2

Vitual machine : SAP Business Warehouse (BW) Java Server VM

Java : IBM Java 1.8

 

Customer hitting below error when trying to fetch data via select query from Snowflake via SAP BW using Snowflake JDBC driver 3.14.4.

 

n.s.c.jdbc.SnowflakeSQLException FINE <init>:104 - Snowflake exception: JDBC driver internal error: exception creating result java.lang.NoClassDefFoundError: net/snowflake/client/jdbc/internal/apache/arrow/memory/rounding/DefaultRoundingPolicy : cannot initialize class because prior initialization attempt failed at net.snowflake.client.jdbc.internal.apache.arrow.memory.RootAllocator.<init>(RootAllocator.java:40).

Cause
Since customer using latest Snowflake JDBC driver 3.13.4 which uses default result format as Arrow and not JSON, arrow result format is not supported on IBM AIX Operating system and thats the reason hitting this error. Connection and other metadata queries are working fine, only issue is with select query where the latest Snowflake JDBC driver internally uses the Apache arrow for result format processing.
Solution

Customer can use this property (jdbc_query_result_format=json) in datasouce property of Application server or session property in application like
 

Statement = connection.createStatement();

Statement.executeQuery("ALTER SESSION SET JDBC_QUERY_RESULT_FORMAT='JSON'");

which will use result format as JSON instead of Arrow and which will avoid the above error.

 

 

Applies To

 

Select Query from SAP BW on AIX Operating system.

© 2024 Snowflake Inc. All Rights Reserved | If you'd rather not receive future emails from Snowflake,
unsubscribe here or customize your communication preferences

Loading
Apache arrow not supported on IBM AIX causing error Java.lang.NoClassDefFoundError for Apache arrow for select query against Snowflake via JDBC driver