Liquibase with DB2 on Z/os

I am a new user with liquibase and I am using it against DB2 via ant scripts. I can use the “generateChangeLog” task with my local db2 on windows. But when I use it against the remote db2 server on z/os, I got the following error:

liquibase.exception.DatabaseException: Error executing SQL SELECT IDENTITY FROM SYSCAT.COLUMNS WHERE TABSCHEMA = ‘someShema’ AND TABNAME = ‘tableName’ AND COLNAME = ‘colName’ AND HIDDEN != ‘S’

I think it is due to the syscat.columns view is different between windows db2 and z/os db2, is liquibase supports DB2 on z/os? And if it is, where can I specify the database system is on z/os instead of windows? (by using ant, or java api? or other means?)

Thanks a lot for your help!

Lily

I haven’t tested liquibase on z/os, and do not know the differences.  Do you know what the SQL should be for z/os? 

Nathan

DB2 structure on Z/os is very different with DB2 on Linux/Unix/Windows. And here is the link for it
http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=/com.ibm.qmf9.doc/qmfhome.htm

drill down into “DB2 V9.1 for z/OS”, then “DB2 reference information” and then “DB2 catalog tables”.

I created http://liquibase.jira.com/browse/CORE-771 to track z/os db2 support.  Thanks for the reference

Nathan

any news on that issue ?


Nothing yet, unfortunately.

Nathan

Hi,

I forked the codebase and added the support for DB2 z/OS.

Please see:
https://github.com/MarkusBernhardt/liquibase

It at least works for me with DB2 z/OS 9.7 and 10.1.
Please note I only tested reverse engineering so far.
So no DDL is implemented.

Will there be a chance to add a extended and  reviewed version of that code to the main line?
Anny comments are welcome.

Cheers,
Markus

Thanks! I’ll take a look.


Nathan

Warning: I know very little about DB2 on Z/os so some of these questions are basic, bear with me.


There is an existing extension for DB2 on iSeries at https://github.com/liquibase/liquibase-db2i. That is different than your z/os support, correct? The z/os support should be moved to an extension rather than directly off the liquibase code, that way it can more easily be updated and managed independently of liquibase releases. I can help with moving it into an extension is you would like.



You have both a DB2 LUW and a DB2ZOS Database object. What are the differences between them and what are the two types for?


Nathan