Файл миграции Flyway не подхватывается

В настоящее время проект содержит 4 файла миграции sql, но последний файл миграции ddl/V201406161418__Add_tracking_codes.sql не выбран.

Миграция выполняется этим методом (обработка ошибок удалена):

@PostConstruct
private void onStartup() {
    Flyway flyway = new Flyway();
    flyway.setInitOnMigrate(true);
    flyway.setLocations(getLocations()); // abstract String[] getLocations()
    flyway.setOutOfOrder(true);
    flyway.setTable(getTable()); // abstract String getTable()

    for(DataSource ds : getDataSources()) { // abstract List<DataSource> getDataSources()
        flyway.setDataSource(ds);
        flyway.repair();
        for (MigrationInfo i : flyway.info().all()) {
            log.info("migrate task: " + i.getVersion() + " : "
                    + i.getDescription() + " from file: " + i.getScript());
        }
        flyway.migrate();
    }
}

Вот что я вижу в логах:

задача миграции: 201405131722: исходная схема из файла: ddl/V201405131722__Initial_schema.sql

задача миграции: 201405131734: исходные данные о продукте из файла: cfg/V201405131734__Initial_product_data.sql

задача переноса: 201406091356 : увеличение платы из файла: cfg/V201406091356__Fee_increase.sql

2014-06-16 16:01:58 ПРЕДУПРЕЖДЕНИЕ DbMigrate:47 - активен режим outOfOrder. Миграция схемы ncsp может быть невоспроизводимой.

16.06.2014, 16:01:58 ИНФОРМАЦИЯ DbMigrate:43 — схема ncsp обновлена. Нет необходимости в миграции.

Как видите, файл миграции находится в том же каталоге. Я вижу, что файл развернут на сервере Glassfish.

Есть ли другая причина, по которой его игнорируют, которую я не вижу?


person Marek    schedule 16.06.2014    source источник


Ответы (1)


Оказывается, я тестирую JRebel. Он взял на себя загрузку ресурсов и вместо того, чтобы искать в файле jar, он искал в своем каталоге кеша.

person Marek    schedule 16.06.2014