I want to better understand how Liquibase performs change shifts.
1)
a) For example, I have a change log with 4 sets of changes, and I run updateDatabase ( http://www.liquibase.org/documentation/ant/updatedatabase_ant_task.html ). Liquibase will make 4 sets of changes.
b) If I run the same change log again, Liquibase will not execute any set.
c) If I add a new change set to the change log and run the change log, Liquibase will only execute the new change set.
Questions:
2) How important is it to change the set identifier? Can I change it after executing the change log?
3) How important is the author of the changes? Can I change it after executing the change log?
4) What happens if I run rollbackDatabase ( http://www.liquibase.org/documentation/ant/rollbackdatabase_ant_task.html )? How does Liquibase know what changes are set for rollback?
a) What happens if I roll back after 1 a). Will Liquibase call a rollback item that is in every change set (4 rollback items)?
b) What happens if I roll back after 1 b). How will Liquibase know to not cause any rollback item?
c) What happens if I roll back after 1 c). Will Liquibase trigger a rollback item of only a new set of changes?
source share