Uploaded image for project: 'OFBiz'
  1. OFBiz
  2. OFBIZ-3829

MySQL 5.5 obsoleted Table TYPE, now ENGINE; causes Create Table statements to fail -- Old issue



      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.




            • Assignee:
              jaz Andrew Zeneski
              bradlanier Brad Lanier
            • Votes:
              0 Vote for this issue
              2 Start watching this issue


              • Created: