is tag logic correct?

if i create a to begin a changeset (to give me rollback point), it will applied to the row PRIOR to the current changeset, in databasechangelog.
This row may not have the same filename as the current changeset file.

Now, if i then try to rollback the entire changeset, only the rows with the same filename of the current changeset will be deleted.

If the tag (for the current changeset) has been applied to the last row of the prior changeset, the rollback command will not find it, and my databasechangelog will still contain the tag.

This doesn’t seem correct to me.

Should not the tag be stored as the first row of the current changeset, and accordingly, deleted in the event of rollback?

mr

Rollback shouldn’t take the filename into account, it should just be reverse execution order. 

Note: this has been changed to work this way very recently, and there were some cases prior to the most recent 2.0 release (maybe even after RC5) that would use the changelog order to determine the order of the changes to rollback, but it should have still gone through different files.

I’m not sure what you mean by “If the tag (for the current changeset) has been applied to the last row of the prior changeset, the rollback command will not find it,”

Nathan