mirror of
https://github.com/ebean-orm/ebean.git
synced 2026-11-08 08:39:19 +00:00
FIX: applied history drops were not recognized (#1422)
This commit is contained in:
1 parent
50593a7f9d
commit
9ad460ecd8
13 files changed
+234
No files matched your search
@@ -3,6 +3,7 @@ package io.ebeaninternal.dbmigration.model;
|
||||
import io.ebeaninternal.dbmigration.migration.ChangeSet;
|
||||
import io.ebeaninternal.dbmigration.migration.ChangeSetType;
|
||||
import io.ebeaninternal.dbmigration.migration.DropColumn;
|
||||
import io.ebeaninternal.dbmigration.migration.DropHistoryTable;
|
||||
import io.ebeaninternal.dbmigration.migration.DropTable;
|
||||
import io.ebeaninternal.dbmigration.migration.Migration;
|
||||
|
||||
@@ -207,10 +208,26 @@ public class PendingDrops {
|
||||
|
||||
} else if (pendingDrop instanceof DropTable && dropTableIn((DropTable) pendingDrop, appliedDrops)) {
|
||||
iterator.remove();
|
||||
|
||||
} else if (pendingDrop instanceof DropHistoryTable && dropHistoryTableIn((DropHistoryTable) pendingDrop, appliedDrops)) {
|
||||
iterator.remove();
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Return true if the pendingDrop is contained in the appliedDrops.
|
||||
*/
|
||||
private boolean dropHistoryTableIn(DropHistoryTable pendingDrop, ChangeSet appliedDrops) {
|
||||
for (Object o : appliedDrops.getChangeSetChildren()) {
|
||||
if (o instanceof DropHistoryTable && sameHistoryTable(pendingDrop, (DropHistoryTable) o)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return true if the pendingDrop is contained in the appliedDrops.
|
||||
*/
|
||||
@@ -235,6 +252,13 @@ public class PendingDrops {
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return true if the DropHistoryTable match by base-table name.
|
||||
*/
|
||||
private boolean sameHistoryTable(DropHistoryTable pendingDrop, DropHistoryTable o) {
|
||||
return pendingDrop.getBaseTable().equals(o.getBaseTable());
|
||||
}
|
||||
|
||||
/**
|
||||
* Return true if the DropTable match by table name.
|
||||
*/
|
||||
|
||||
Reference in new issue
Block a user