Changelog pre-condition failure causes exception

I am using Liquibase through Grails Database Migration Plugin. I am trying to accomplish a simple goal - to not run any of my chnagesets if the database is HSQL. I am adding a pre-condition (this is Groovy DSL) to my master changelog file:

databaseChangeLog = {

include file: ‘changelog_2.5.0.groovy’


I would like the database migration to stop if the database is HSQL. And that works fine. What I do not want to happen is for the Grails application to quit upon encountering a Liquibase exception. 

Thus, my question: is it possible to quietly exit from the changelog after the precondition fails without throwing an exception? I understand this can be done in changesets (MARK_AS_RUN), but I would like to have a global pre-condition attached to the changelog.

Thank you,


The liquibase processing throws an exception describing the precondition failure, and it is up to the app running liquibase (grails in this case) to handle the exception as it wants.

You probably need to check with the grails liquibase list. I haven’t dealt with that code at all, sorry.