generateChangeLog and empty <rollback/> tags

The Liquibase documentation states that �create table�, �rename column�, and �add column� can all automatically generate rollback statements if they are the only items in a changeSet.

When you run generateChangeLog from the command line against a template database, every changeSet that is created in the xml file has an empty tag added to it.  If I’m reading the documentation correctly, that means that those changeSets will not roll back properly even though Liquibase can handle most of them automatically without any problem.

Is there any way to suppress that empty tag on changeSets that only contain �create table�, �rename column�, and �add column� refactorings?

You are right, that should not be included in there.  What version are you using?

Nathan

I’m running a trunk build from Friday or Monday, so 2.0-RC8ish.

Am I correct in assuming that the following changes can handle automatic rollback in 2.0?

AddColumn
AddDefaultValue
AddForeignKeyConstraint
AddLookupTable
AddNotNullConstraint
AddPrimaryKey
AddUniqueConstraint
CreateIndex
CreateSequence
CreateTable
CreateView
DropNotNullConstraint
RenameColumn
RenameTable
RenameView
TagDatabase

I found the problem and committed a fix so there won’t be an empty rollback tag now.

That looks like a pretty good list of the automatic rollback changes.  I don’t know if off hand, though.

Nathan