2.0rc5 generateChangeLog-error

Hi,

I am trying to use generateChangeLog on an existing database like this

    liquibase.bat --username=user --password=pwd --changeLogFile=changelog.xml generateChangeLog

and get the following error with 2.0rc5. Any clue? Best regards /Lasse

    $ liquibase.bat --username=user --password=pwd --changeLogFile=apa.xml generateChangeLog 2010-aug-12 10:43:34 liquibase.logging.jvm.JavaUtilLogger info INFO: Reading tables for USER @ jdbc:oracle:thin:@host:1580:db ... 2010-aug-12 10:43:34 liquibase.logging.jvm.JavaUtilLogger info INFO: Reading views for USER @ jdbc:oracle:thin:@host:1580:db ... INFO 2010-08-12 10:43:liquibase: Can not use class liquibase.executor.LoggingExecutor as a Liquibase service because it does not have a default constr uctor 2010-aug-12 10:43:35 liquibase.logging.jvm.JavaUtilLogger info INFO: Reading foreign keys for USER @ jdbc:oracle:thin:@host:1580:db ... 2010-aug-12 10:43:39 liquibase.logging.jvm.JavaUtilLogger info INFO: Reading primary keys for USER @ jdbc:oracle:thin:@host:1580:db ... 2010-aug-12 10:43:41 liquibase.logging.jvm.JavaUtilLogger info INFO: Reading columns for USER @ jdbc:oracle:thin:@host:1580:db ... 2010-aug-12 10:43:45 liquibase.logging.jvm.JavaUtilLogger info INFO: Reading unique constraints for USER @ jdbc:oracle:thin:@host:1580:db ... 2010-aug-12 10:43:45 liquibase.logging.jvm.JavaUtilLogger info INFO: Reading indexes for USER @ jdbc:oracle:thin:@host:1580:db ... Liquibase Update Failed: ORA-01114: IO error writing block to file 261 (block # 1748) ORA-27072: File I/O error Additional information: 4 Additional information: 1748 Additional information: 77824 ORA-01114: IO error writing block to file 261 (block # 1748) ORA-27072: File I/O error Additional information: 4 Additional information: 1748 Additional information: 77824 .  For more information, use the --logLevel flag) 2010-aug-12 10:43:50 liquibase.logging.jvm.JavaUtilLogger info INFO: ORA-01114: IO error writing block to file 261 (block # 1748) ORA-27072: File I/O error Additional information: 4 Additional information: 1748 Additional information: 77824 ORA-01114: IO error writing block to file 261 (block # 1748) ORA-27072: File I/O error Additional information: 4 Additional information: 1748 Additional information: 77824

    liquibase.exception.DatabaseException: java.sql.SQLException: ORA-01114: IO error writing block to file 261 (block # 1748)
    ORA-27072: File I/O error
    Additional information: 4
    Additional information: 1748
    Additional information: 77824
    ORA-01114: IO error writing block to file 261 (block # 1748)
    ORA-27072: File I/O error
    Additional information: 4
    Additional information: 1748
    Additional information: 77824

            at liquibase.snapshot.jvm.JdbcDatabaseSnapshotGenerator.createSnapshot(JdbcDatabaseSnapshotGenerator.java:230)
            at liquibase.snapshot.DatabaseSnapshotGeneratorFactory.createSnapshot(DatabaseSnapshotGeneratorFactory.java:69)
            at liquibase.diff.Diff.compare(Diff.java:65)
            at liquibase.integration.commandline.CommandLineUtils.doGenerateChangeLog(CommandLineUtils.java:122)
            at liquibase.integration.commandline.Main.doMigration(Main.java:612)
            at liquibase.integration.commandline.Main.main(Main.java:105)
    Caused by: java.sql.SQLException: ORA-01114: IO error writing block to file 261 (block # 1748)
    ORA-27072: File I/O error
    Additional information: 4
    Additional information: 1748
    Additional information: 77824
    ORA-01114: IO error writing block to file 261 (block # 1748)
    ORA-27072: File I/O error
    Additional information: 4
    Additional information: 1748
    Additional information: 77824

            at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
            at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
            at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
            at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:745)
            at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:210)
            at oracle.jdbc.driver.T4CStatement.executeForRows(T4CStatement.java:961)
            at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1072)
            at oracle.jdbc.driver.T4CStatement.executeMaybeDescribe(T4CStatement.java:845)
            at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1154)
            at oracle.jdbc.driver.OracleStatement.executeQuery(OracleStatement.java:1313)
            at liquibase.snapshot.jvm.OracleDatabaseSnapshotGenerator.readIndexes(OracleDatabaseSnapshotGenerator.java:243)
            at liquibase.snapshot.jvm.JdbcDatabaseSnapshotGenerator.createSnapshot(JdbcDatabaseSnapshotGenerator.java:225)
            … 5 more

I haven’t seen it before.  Database or file system problem?

Nathan

Dunno!

No problems on 1.9.5

BTW why write anythng when just retrieving state of database?

Best regards /Lasse

I guess it shouldn’t be writing to the filesystem at that point yet. 

Looking at the error, it looks like an error running:

select aic.index_name, 3 AS TYPE, aic.table_name, aic.column_name, aic.column_position AS ORDINAL_POSITION, null AS FILTER_CONDITION, ai.tablespace_name AS TABLESPACE FROM all_ind_columns aic, all_indexes ai WHERE aic.table_owner=’" + database.convertRequestedSchemaToSchema(schema) + "’ and aic.index_name = ai.index_name ORDER BY INDEX_NAME, ORDINAL_POSITION

and oracle is dying on that.  Any idea why?  It works  on my local oracle (XE) test database.

Nathan