Has anyone attempted to use Liquibase with VMware’s new vFabric SQLFire database? It is based off of Apache Derby, and thus running liquibase against it makes liquibase use its built in Derby code. I have attempted to use version 1.9.4 and version 2.0.5 with no success.
1.9.4 had errors with the CHECKPOINT_DATABASE stored procedure in the Derby implementation being named differently than the one in SQLFire.
I am completely willing to research and attempt to code an extension for SQLFire, but I am not entirely sure where to start (since it appears that the Derby implementation is half working)
Here is output from 2.0.5
…/liquibase --driver=com.vmware.sqlfire.jdbc.ClientDriver --classpath=/Users/acooper/Downloads/vFabric_SQLFire_102/lib/sqlfireclient.jar --changeLogFile=mdm.changelog.xml --url=“jdbc:sqlfire://localhost:1527” --username=**** --password=**** --logLevel=DEBUG update
Liquibase Home is not set.
Liquibase Home: /Users/acooper/Downloads/liquibase-2.0.5-bin
DEBUG 5/18/12 8:30 AM:liquibase: Unable to load/access Apache Derby driver class to check version
DEBUG 5/18/12 8:30 AM:liquibase: Unable to load/access Apache Derby driver class to check version
DEBUG 5/18/12 8:30 AM:liquibase: Connected to scott@jdbc:sqlfire://localhost:1528/
DEBUG 5/18/12 8:30 AM:liquibase: Executing QUERY database command: SELECT LOCKED FROM DATABASECHANGELOGLOCK WHERE ID=1
DEBUG 5/18/12 8:30 AM:liquibase: Lock Database
DEBUG 5/18/12 8:30 AM:liquibase: Executing UPDATE database command: UPDATE DATABASECHANGELOGLOCK SET LOCKED = 1, LOCKEDBY = ‘fd00:6587:52d7:843:ca2a:14ff:fe45:b6f8 (fd00:6587:52d7:843:ca2a:14ff:fe45:b6f8)’, LOCKGRANTED = TIMESTAMP(‘2012-05-18 08:30:07.105000’) WHERE ID = 1 AND LOCKED = 0
INFO 5/18/12 8:30 AM:liquibase: Successfully acquired change log lock
INFO 5/18/12 8:30 AM:liquibase: mdm.changelog.xml is using schema version 1.9 rather than version 2.0
INFO 5/18/12 8:30 AM:liquibase: 1.0/mdm.createdb.xml is using schema version 1.9 rather than version 2.0
INFO 5/18/12 8:30 AM:liquibase: 1.0/mdm.indexes.xml is using schema version 1.9 rather than version 2.0
INFO 5/18/12 8:30 AM:liquibase: 1.0/mdm.modifydb.xml is using schema version 1.9 rather than version 2.0
INFO 5/18/12 8:30 AM:liquibase: 1.0/populate.initial.xml is using schema version 1.9 rather than version 2.0
INFO 5/18/12 8:30 AM:liquibase: 1.1/mdm.modifydb.xml is using schema version 1.9 rather than version 2.0
INFO 5/18/12 8:30 AM:liquibase: 1.2/mdm.modifydb.xml is using schema version 1.9 rather than version 2.0
INFO 5/18/12 8:30 AM:liquibase: 1.3/mdm.modifydb.xml is using schema version 1.9 rather than version 2.0
INFO 5/18/12 8:30 AM:liquibase: 1.4/mdm.modifydb.xml is using schema version 1.9 rather than version 2.0
INFO 5/18/12 8:30 AM:liquibase: 1.5/mdm.modifydb.xml is using schema version 1.9 rather than version 2.0
INFO 5/18/12 8:30 AM:liquibase: 1.6/mdm.modifydb.xml is using schema version 1.9 rather than version 2.0
INFO 5/18/12 8:30 AM:liquibase: 1.7/mdm.modifydb.xml is using schema version 1.9 rather than version 2.0
INFO 5/18/12 8:30 AM:liquibase: 1.8/mdm.modifydb.xml is using schema version 1.9 rather than version 2.0
INFO 5/18/12 8:30 AM:liquibase: 2.0/mdm.modifydb.xml is using schema version 1.9 rather than version 2.0
INFO 5/18/12 8:30 AM:liquibase: 2.1/mdm.modifydb.xml is using schema version 1.9 rather than version 2.0
INFO 5/18/12 8:30 AM:liquibase: 2.2/mdm.modifydb.xml is using schema version 1.9 rather than version 2.0
DEBUG 5/18/12 8:30 AM:liquibase: Executing QUERY database command: SELECT MD5SUM FROM DATABASECHANGELOG WHERE MD5SUM IS NOT NULL
INFO 5/18/12 8:30 AM:liquibase: Reading from DATABASECHANGELOG
DEBUG 5/18/12 8:30 AM:liquibase: Executing QUERY database command: SELECT FILENAME,AUTHOR,ID,MD5SUM,DATEEXECUTED,ORDEREXECUTED,TAG,EXECTYPE FROM DATABASECHANGELOG ORDER BY DATEEXECUTED ASC, ORDEREXECUTED ASC
INFO 5/18/12 8:30 AM:liquibase: Reading from DATABASECHANGELOG
DEBUG 5/18/12 8:30 AM:liquibase: Executing QUERY database command: SELECT FILENAME,AUTHOR,ID,MD5SUM,DATEEXECUTED,ORDEREXECUTED,TAG,EXECTYPE FROM DATABASECHANGELOG ORDER BY DATEEXECUTED ASC, ORDEREXECUTED ASC
DEBUG 5/18/12 8:30 AM:liquibase: Release Database Lock
DEBUG 5/18/12 8:30 AM:liquibase: Executing UPDATE database command: UPDATE DATABASECHANGELOGLOCK SET LOCKED = 0, LOCKEDBY = NULL, LOCKGRANTED = NULL WHERE ID = 1
INFO 5/18/12 8:30 AM:liquibase: Successfully released change log lock
Liquibase Update Failed: Unknown Reason
SEVERE 5/18/12 8:30 AM:liquibase: Unknown Reason
java.lang.NullPointerException
at liquibase.database.core.DerbyDatabase.close(DerbyDatabase.java:108)
at liquibase.integration.commandline.Main.doMigration(Main.java:888)
at liquibase.integration.commandline.Main.main(Main.java:134)