Class V1_3_9__Drop_constraint_for_DSpace_1_4_schema

  • All Implemented Interfaces:
    org.flywaydb.core.api.migration.jdbc.JdbcMigration, org.flywaydb.core.api.migration.MigrationChecksumProvider

    public class V1_3_9__Drop_constraint_for_DSpace_1_4_schema
    extends Object
    implements org.flywaydb.core.api.migration.jdbc.JdbcMigration, org.flywaydb.core.api.migration.MigrationChecksumProvider
    This class is in support of the "V1.4__Upgrade_to_DSpace_1.4_schema.sql" It simply drops the database constraint associated with the "name" column of the "community" table. This is necessary for the upgrade from 1.3 to 1.4

    This class was created because the names of database constraints differs based on the type of database (Postgres vs. Oracle vs. H2). As such, it becomes difficult to write simple SQL which will work for multiple database types (especially since unit tests require H2 and the syntax for H2 is different from either Oracle or Postgres).

    NOTE: This migration class is very simple because it is meant to be used in conjuction with the corresponding SQL script: ./etc/migrations/[db-type]/V1.4__Upgrade_to_DSpace_1.4_schema.sql

    Also note that this migration is "hackingly" versioned "1.3.9" as it needs to run just PRIOR to the 1.4 migration script.

    This class represents a Flyway DB Java Migration http://flywaydb.org/documentation/migration/java.html

    Author:
    Tim Donohue
    • Constructor Detail

      • V1_3_9__Drop_constraint_for_DSpace_1_4_schema

        public V1_3_9__Drop_constraint_for_DSpace_1_4_schema()
    • Method Detail

      • migrate

        public void migrate​(Connection connection)
                     throws IOException,
                            SQLException
        Actually migrate the existing database
        Specified by:
        migrate in interface org.flywaydb.core.api.migration.jdbc.JdbcMigration
        Parameters:
        connection - SQL Connection object
        Throws:
        IOException - A general class of exceptions produced by failed or interrupted I/O operations.
        SQLException - An exception that provides information on a database access error or other errors.
      • getChecksum

        public Integer getChecksum()
        Return the checksum to be associated with this Migration in the Flyway database table (schema_version).
        Specified by:
        getChecksum in interface org.flywaydb.core.api.migration.MigrationChecksumProvider
        Returns:
        checksum as an Integer