> MySQL 5.5 obsoleted Table TYPE, now ENGINE; causes Create Table statements to fail -- Old issue
> -----------------------------------------------------------------------------------------------
>
> Key: OFBIZ-3829
> URL:
https://issues.apache.org/jira/browse/OFBIZ-3829> Project: OFBiz
> Issue Type: Bug
> Components: ALL COMPONENTS
> Affects Versions: Release 4.0, Release Branch 09.04, Release 09.04, Release Branch 10.04, SVN trunk
> Environment: Testing verified on 10.0.4, but probably affected on all releases. Vista x64; MySQL 5.5.3-M3
> Reporter: Brad Lanier
> Labels: MySQL, engine, entityengine, table-type, table_type, tabletype
>
> 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.