Snowflake

Overview


Snowflake is an analytic data warehouse that is fast, easy to use, and pliable. We have built the Snowflake Connected system to employ these benefits in Appian. You can use this connected system to create an integration object that can help perform SELECT, INSERT, UPDATE, DELETE, CALL FUNCTION or STORED PROCEDURE operations in the Snowflake Database tables or views.


To establish the connection, while creating a connected system you will need

  • Account Name: Full name of your account (provided by Snowflake). Note that your full account name might include additional segments that identify the region and cloud platform where your account is hosted. ex: <account>.snowflakecomputing.com
  • Role: Default access control role to use in the Snowflake session. The specified role should be an existing role that has already been assigned to the specified user. If the specified role has not already been assigned to the user, the role is not used when the session. ex: ACCOUNTADMIN, SECURITYADMIN, SYSADMIN, PUBLIC. (Only provide single role)
  • User: Login name of the user for the connection.
  • Password: Password of the account

 

Key Features & Functionality

  • Queried data from Snowflake will be returned in the integration as Dictionary format.
  • Added Warehouse, DB and Schema as the optional parameters.
  • The result will contain the total number of rows returned from Snowflake.
  • The result will contain the column metadata.
Anonymous
  • 24.2 utilizes Java 17.  There is a known Snowflake issue regarding this.  As a workaround, we were able to update the connection string within Snowflake to allow us to start syncing again.

    ALTER USER [USER] SET JDBC_QUERY_RESULT_FORMAT='JSON';

  • We're getting the same error.  Appian 24.2 with plugin version 3.1.0.  Test connection from the Connected System object is successful, but all integrations getting the error.

  • Our test environment was upgraded to 24.2 Sunday night.  After the upgrade we could no longer sync with Snowflake.  Up to that point, everything worked perfectly fine.  Now, we get errors when the sync tries to run.

    "Unable to sync due to an error in the Record Data Source during batch number 1

    The Record Data Source returned an error. Title: Error Occurred Detail: net.snowflake.client.jdbc.SnowflakeSQLException: JDBC driver internal error: exception creating result java.lang.NoClassDefFoundError: Could not initialize class net.snowflake.client.jdbc.internal.apache.arrow.memory.RootAllocator at net.snowflake.client.jdbc.SnowflakeResultSetSerializableV1.create(SnowflakeResultSetSerializableV1.java:586). in query SELECT * FROM vwTHERAPYTYPE OFFSET 0 ROWS FETCH NEXT 1000 ROWS ONLY Message: JDBC driver internal error: exception creating result java.lang.NoClassDefFoundError: Could not initialize class net.snowflake.client.jdbc.internal.apache.arrow.memory.RootAllocator at net.snowflake.client.jdbc.SnowflakeResultSetSerializableV1.create(SnowflakeResultSetSerializableV1.java:586)."

     

  • Our Test environment was upgraded to 24.2 last night and we started getting these exact errors today.  Has there been any response or fixes yet?

  • Up

    Also encountering this issue on 3 separate environments. We are on 24.2 already


    snowflakeResultSetSerializableV1 error

    Thank you

  • Team,

    Can anyone please help me on this issue?

    Regards,
    Deepak
  • Team,

    We are connecting to Snowflake database through connected system using this plugin in one of our applications. The connected system is successfully getting connected. While using it in a Retrieve Integration operation, it is throwing the below error in our UAT environment which is in 24.2.

    Error Occurred

    error-result-guidance

    JDBC driver internal error: exception creating result java.lang.NoClassDefFoundError: Could not initialize class net.snowflake.client.jdbc.internal.apache.arrow.memory.RootAllocator at net.snowflake.client.jdbc.SnowflakeResultSetSerializableV1.create(SnowflakeResultSetSerializableV1.java:586). net.snowflake.client.jdbc.SnowflakeSQLException: JDBC driver internal error: exception creating result java.lang.NoClassDefFoundError: Could not initialize class net.snowflake.client.jdbc.internal.apache.arrow.memory.RootAllocator at net.snowflake.client.jdbc.SnowflakeResultSetSerializableV1.create(SnowflakeResultSetSerializableV1.java:586). in query SELECT ISO_ENGLISH_SHORTNAME_NM FROM VW_MDM_COUNTRY ORDER BY ISO_ENGLISH_SHORTNAME_NM ASC OFFSET 0 ROWS FETCH NEXT 1000 ROWS ONLY

    We have found out that the same integration is working fine in our DEV environment which is in 24.1. Can someone help us on fixing this issue.

    Regards,

    Deepak

  • Hello,

    Thank you for your reply, we already resolved this issue by including the service name and hostname

    Thanks!

  • Hi  ,

    It seems like SSL Certificate issue. Can you contact Snowflace team to configure your Appian Domain as a trusted. So that this issue will be resolved.

    Best.