Transaction not working with migrate
Are you using MySQL? It's quite possible your database does not support transaction DDL. Transactions are working fine with the migrator generally, I assume this is down to your database not supporting it:

```python
class Reg(Model):
    key = TextField()
    class Meta:
        database = db

db.drop_tables([Reg])
db.create_tables([Reg])

migrator = SqliteMigrator(db)
with db.atomic() as txn:
    migrate(migrator.add_column('reg', 'new_col', TextField(default='')))

    print([x.name for x in db.get_columns('reg')])
    txn.rollback()

print([x.name for x in db.get_columns('reg')])
db.drop_tables([Reg])
```

This correctly prints:

```
['id', 'key', 'new_col']
['id', 'key']
``` Indeed, mysql doesn't support rollback for DDL, I didn't know that. 

It wasn't a peewee problem, sorry for the bothering

Thank you for your answer :) 
Hello, 

I have a problem with the peewee migration. I can't make transactions work with the migrate. It is always committed, I can't rollback. 
It should be possible as the documentation says in the warning section here: https://docs.peewee-orm.com/en/latest/peewee/playhouse.html#example-usage

Here is an exemple code where the rollback does nothing and the alter table is commit. 
```migrator = MySQLMigrator(db)
   with db.atomic() as txn:
      migrate(migrator.add_column("table_name", 'new_column', CharField(default='')))
      # this should rollback the migrate
      txn.rollback()
```
When I reach the ```txn.rollback()``` the action is already committed and I can see the new column in my table. The rollback does nothing. 

Is there something I do wrong ? I do use transaction in other senario like basic CRUD operation and thoses works as expected. 

I'm using peewee v3.14.8