How to use Snowflake extension

Hey, murali! Are you a Snowflake employee or customer? Thanks!

I spent some time today working through some attempts to use the snowflake extension. There appear to be some significant issues with the plugin. The only way I was able to get it to work was to use Liquibase 3.5.3 (released October 2016, downloaded from github) along with a self-built version of liquibase-snowflake built from the latest version of the code on github. I was able to deploy some changes using both a formatted sql changelog and an XML changelog. 

There are some open issues on the liquibase-snowflake extension that have not been addressed at all in the last 2 years, so I suspect it may have been abandoned. At Datical, we have started getting more inquiries about snowflake, so we will spend some time soon looking at forking this extension and bringing it into the Liquibase organization, but I can’t make any promises about the timing of that. If we were to do that we would also make sure that it worked well with the latest version of Liquibase.

Steve Donie
Principal Software Engineer
Liquibase Community Engagement
Datical, Inc. http://www.datical.com/

I have created https://liquibase.jira.com/browse/CORE-3574 to track this. 

Steve Donie
Principal Software Engineer
Liquibase Community Engagement
Datical, Inc. http://www.datical.com/

Thanks so much Bruce! Much appreciated. 

Steve Donie
Principal Software Engineer
Liquibase Community Engagement
Datical, Inc. http://www.datical.com/

Bruce, a question for you - the source for this was originally at https://github.com/CDKGlobal/liquibase-snowflake, but I see that you have forked that to https://github.com/bruce-szalwinski/liquibase-snowflake

As you are the author of both, should the community consider your fork to be the ‘canonical’ fork at this time? If so, is there any way you could get the CDKGlobal version marked as ‘deprecated’ and your fork marked as ‘latest and greatest’?

Thank you,

Steve Donie
Principal Software Engineer
Liquibase Community Engagement
Datical, Inc. http://www.datical.com/

Hello All,

I am very new to liquibase , i am setting up to deploy snowflake changes (without maven or ant ) . i am wondering how to use snowflake extension jar file https://liquibase.jira.com/wiki/spaces/CONTRIB/pages/113372651/Snowflake+extension .

I copied it to same class path as dbchangelog, but it is throwing an error 
Unexpected error running Liquibase: class liquibase.ext.database.SnowflakeDatabase overrides final method addReservedWords.(Ljava/util/Collection;).

Without this extension i am able to deploy changes.

My changelog looks like this way , please assist where to place .jar file and any other configs.

Thanks Steve for looking into this, Is there any feature request from datical we can follow up on progress?

Hi Robert,

I am snowflake customer , learning snowflake :slight_smile:

Regards,

Murali

Many Thanks Steve.

Thanks for your interest in the liquibase-snowflake plugin.  I was the original author, but haven’t maintained it in quite some time.  I recently had the opportunity to do some work with Snowflake so took the opportunity to upgrade the plugin to the latest liquibase release, 3.8.5.  You can find the source at https://liquibase.jira.com/wiki/spaces/CONTRIB/pages/113372651/Snowflake+extension.  You can also find a sample implemenation at https://github.com/bruce-szalwinski/liquibase-snowflake-sample

Yes, I would think the fork at https://github.com/bruce-szalwinski/liquibase-snowflake should be the “canonical” fork.  I’ll try and contact the folks at CDKGlobal to see if they can mark my original work as deprecated.  I can update the README in my fork to say “latest and greatest”.

I was also working with liquibase for a while.

If it helps here’s the example how I did it.

https://github.com/hello-ish/liquibase-snowflake-sample

NOTE: Many thanks and credit goes to Bruce.