Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
Release 4.0, Release Branch 09.04, Release 09.04, Release Branch 10.04, Trunk
-
Testing verified on 10.0.4, but probably affected on all releases. Vista x64; MySQL 5.5.3-M3
Description
This is apparently an old issue (see OFBIZ-873 http://markmail.org/message/xggd7nsnorbbhvrv ) that has reared its ugly head again.
In MySQL 5.5, "TYPE is no longer supported in the table syntax. Here is the excerpt from "What's new in MySQL 5.5":
"The following constructs are obsolete and have been removed in MySQL 5.5. Where alternatives are shown, applications should be updated to use them.
- The table_type system variable (use storage_engine).
*The TYPE table option to specify the storage engine for CREATE TABLE or ALTER TABLE (use ENGINE)."
The rest of the original issue is still applicable, so I won't repeat it here.
Recommendation: Add a variable "tableEngine" ("table-engine=" in the entityengine.xml file <datasource> section) and appropriate code in DatabaseUtil.java, searching for and using the string "ENGINE" where "TYPE" is currently used, but keep the tableType constructs so as not to break other databases.
Temporary workaround: Ensure MySQL 5.5 storage_engine server variable is set to InnoDB, and remove the "table-type=InnoDB" line from the <datasource> sections of the entityengine.xml file.