Why sqitch init snowflake cannot determine Snowflake account name ?


Currently supported databases by Sqitch’s database change management tool include Snowflake’s Cloud Data Warehouse as well as PostgreSQL 8.4+, SQLite 3.7.11+, MySQL 5.0+, Oracle 10g+, Firebird 2.0+, Vertica 6.0+, and Exasol 6.0+.

When you run the command

sqitch init widgets --engine snowflake

It throws an error as “Cannot determine Snowflake Account Name

Its a known issue : It states that Sqitch can’t find an account code . Without an account code you can’t connect to Snowflake.

There is a workaround, you can set the $SNOWSQL_ACCOUNT environment variable as  below.

SNOWSQL_ACCOUNT=account_xxx ./t/sqitch init foo --engine snowflake

You can refer how to configure the snow sql from here https://docs.snowflake.com/en/user-guide/snowsql-config.html 

Alternatively you can try this ( We didnt test this )
Create a snowsql config file without default values.
you can specify -a MY_ACCCOUNT_NAME
if the accountname property is not set in the snowql config -> sqitch will NOT work.
set the “MY_ACCCOUNT_NAME” property in the snowsql config–> sqitch will work.

Author: user

Leave a Reply