South migrate error, InnoDB: ROW_FORMAT=DYNAMIC requires innodb_file_format > Antelope

Skip to first unread message

Ikaros andi

May 9, 2014, 1:13:58 AM5/9/14

I migrate data occur error.
I tried to run raw sql below:
ALTER TABLE wxwall_participation ADD COLUMN event INT DEFAULT 0
ALTER TABLE wxwall_scene ADD COLUMN welcome_msg VARCHAR(400) NULL
They work very well, which make me comfuse.How can I solve this problem?

error detail:

- Migrating forwards to 0002_auto__add_field_participation_event__add_field_scene_welcome_msg.
 > wxwall:0002_auto__add_field_participation_event__add_field_scene_welcome_msg
 ! Error found during real run of migration! Aborting.

 ! Since you have a database that does not support running
 ! schema-altering statements in transactions, we have had
 ! to leave it in an interim state between migrations.

! You *might* be able to recover with:   - no dry run output for delete_foreign_key() due to dynamic DDL, sorry
   = ALTER TABLE `wxwall_participation` DROP COLUMN `event` CASCADE; []
   - no dry run output for delete_foreign_key() due to dynamic DDL, sorry
   = ALTER TABLE `wxwall_scene` DROP COLUMN `welcome_msg` CASCADE; []

 ! The South developers regret this has happened, and would
 ! like to gently persuade you to consider a slightly
 ! easier-to-deal-with DBMS (one that supports DDL transactions)
 ! NOTE: The error which caused the migration to fail is further up.
Error in migration: wxwall:0002_auto__add_field_participation_event__add_field_scene_welcome_msg
  File "E:\PyCharm 3.0.1\helpers\pydev\", line 1534, in <module>['file'], None, None)
  File "E:\PyCharm 3.0.1\helpers\pydev\", line 1145, in run
    pydev_imports.execfile(file, globals, locals) #execute the script
  File "D:/YUNTU/Incubations/Project/chlitina/germes/", line 36, in <module>
  File "E:\Python27\lib\site-packages\django\core\management\", line 443, in execute_from_command_line
  File "E:\Python27\lib\site-packages\django\core\management\", line 382, in execute
  File "E:\Python27\lib\site-packages\django\core\management\", line 196, in run_from_argv
    self.execute(*args, **options.__dict__)
  File "E:\Python27\lib\site-packages\django\core\management\", line 232, in execute
    output = self.handle(*args, **options)
  File "D:\YUNTU\Incubations\Project\chlitina\germes\lib\south\management\commands\", line 111, in handle
    ignore_ghosts = ignore_ghosts,
  File "D:\YUNTU\Incubations\Project\chlitina\germes\lib\south\migration\", line 220, in migrate_app
    success = migrator.migrate_many(target, workplan, database)
  File "D:\YUNTU\Incubations\Project\chlitina\germes\lib\south\migration\", line 254, in migrate_many
    result = migrator.__class__.migrate_many(migrator, target, migrations, database)
  File "D:\YUNTU\Incubations\Project\chlitina\germes\lib\south\migration\", line 329, in migrate_many
    result = self.migrate(migration, database)
  File "D:\YUNTU\Incubations\Project\chlitina\germes\lib\south\migration\", line 133, in migrate
    result =, database)
  File "D:\YUNTU\Incubations\Project\chlitina\germes\lib\south\migration\", line 114, in run
    return self.run_migration(migration, database)
  File "D:\YUNTU\Incubations\Project\chlitina\germes\lib\south\migration\", line 84, in run_migration
  File "D:\YUNTU\Incubations\Project\chlitina\germes\lib\south\migration\", line 60, in <lambda>
    return (lambda: direction(orm))
  File "D:\YUNTU\Incubations\Project\chlitina\germes\app\weixin\wxwall\migrations\", line 17, in forwards
  File "D:\YUNTU\Incubations\Project\chlitina\germes\lib\south\db\", line 47, in _cache_clear
    return func(self, table, *args, **opts)
  File "D:\YUNTU\Incubations\Project\chlitina\germes\lib\south\db\", line 418, in add_column
  File "D:\YUNTU\Incubations\Project\chlitina\germes\lib\south\db\", line 282, in execute
    cursor.execute(sql, params)
  File "E:\Python27\lib\site-packages\django\db\backends\", line 40, in execute
    return self.cursor.execute(sql, params)
  File "E:\Python27\lib\site-packages\django\db\backends\mysql\", line 114, in execute
    return self.cursor.execute(query, args)
  File "E:\Python27\lib\site-packages\MySQLdb\", line 203, in execute
    if not self._defer_warnings: self._warning_check()
  File "E:\Python27\lib\site-packages\MySQLdb\", line 117, in _warning_check
    warn(w[-1], self.Warning, 3)

_mysql_exceptions.Warning: InnoDB: ROW_FORMAT=DYNAMIC requires innodb_file_format > Antelope.

Andrew Godwin

May 9, 2014, 1:24:57 AM5/9/14
This isn't a South problem; your MySQL installation is misconfigured to try and use ROW_FORMAT=DYNAMIC but still use the original storage format for InnoDB which doesn't support this. You'll have to fix that before you can use South or Django at all.

Check you don't have anything forcing ROW_FORMAT=DYNAMIC in your Django database settings; if there is, remove it; if you don't know what it is, it shouldn't be in there.


You received this message because you are subscribed to the Google Groups "South Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
To post to this group, send email to
Visit this group at
For more options, visit

Reply all
Reply to author
0 new messages