Documentation: MySQL 5.5 switched to InnoDB as default storage engine
|Reported by:||Owned by:||nobody|
|Cc:||Triage Stage:||Ready for checkin|
|Has patch:||yes||Needs documentation:||no|
|Needs tests:||no||Patch needs improvement:||no|
The Django documentation states here https://docs.djangoproject.com/en/1.0/ref/databases/#storage-engines "The default engine is MyISAM ...". This is not true since MySQL Version 5.5. InnoDB is the default now. See: http://dev.mysql.com/doc/refman/5.5/en/innodb-default-se.html
In consequence also manage.py syndb creates InnoDB tables by default.
This can lead to misleading error messages of manage.py (which is not the fault of manage.py) like:
Failed to install index for ... model: Specified key was too long; max key length is 767 bytes
Although this messages indicates the index could not be installed it is!
The index gets automatically shortened to 255 bytes and is therefore no full "covering index" but a "prefix index" which seams not to be a real performance issue.
Maybe some of these facts could be incorporated to the django documentation to help MySQL users that will tend to stumble about this error more often the more MySQL 5.5 is used.
Change History (9)
comment:1 Changed 5 years ago by
|Summary:||Documentation misses MySQL 5.5 switch InnoDB as default storage engine → Documentation: MySQL 5.5 switched to InnoDB as default storage engine|