From e2dea54efe53fbeb66e684973ed6ad05f63969cc Mon Sep 17 00:00:00 2001 From: Tim Graham Date: Fri, 12 Oct 2012 06:37:35 -0400 Subject: [PATCH] [1.4.X] Fixed #18256 - Added a potential pitfall when upgrading to MySQL 5.5.5 Backport of c870cb48cd from master --- docs/ref/databases.txt | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/docs/ref/databases.txt b/docs/ref/databases.txt index 1500f3f5c3..dba278bc4f 100644 --- a/docs/ref/databases.txt +++ b/docs/ref/databases.txt @@ -165,6 +165,16 @@ Since MySQL 5.5.5, the default storage engine is InnoDB_. This engine is fully transactional and supports foreign key references. It's probably the best choice at this point. +If you upgrade an existing project to MySQL 5.5.5 and subsequently add some +tables, ensure that your tables are using the same storage engine (i.e. MyISAM +vs. InnoDB). Specifically, if tables that have a ``ForeignKey`` between them +use different storage engines, you may see an error like the following when +running ``syncdb``:: + + _mysql_exceptions.OperationalError: ( + 1005, "Can't create table '\\db_name\\.#sql-4a8_ab' (errno: 150)" + ) + .. versionchanged:: 1.4 In previous versions of Django, fixtures with forward references (i.e.