I do not think the problem is caused by migrations, even syncdb will give you the same result.
The error occurs because MySQL can only index the first N characters of a BLOB or TEXT column. Thus, you should have the TEXT or BLOB field / column type that you are trying to make as a primary key or index.
With a full BLOB or TEXT without a length value, MySQL cannot guarantee the uniqueness of the column as its variable and dynamic sizes. Thus, when using the BLOB or TEXT types, the value N must be specified as an index so that MySQL can determine the key length.
Try to fix this problem, and then try to apply migration, it should work well. and Yes, you can apply any migrations and skip the old ones, but I recommend not to do this, since this is not how the south is supposed to be used.
Hope I made things a little clear.
Rohit
source share