[ 
https://issues.apache.org/activemq/browse/AMQ-2857?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Gary Tully reassigned AMQ-2857:
-------------------------------

    Assignee: Gary Tully

> ActiveMQ fails to create tables in MySQL 5.5.5
> ----------------------------------------------
>
>                 Key: AMQ-2857
>                 URL: https://issues.apache.org/activemq/browse/AMQ-2857
>             Project: ActiveMQ
>          Issue Type: Bug
>    Affects Versions: 5.3.2
>         Environment: MySQL 5.5.5
>            Reporter: Matthew J.
>            Assignee: Gary Tully
>            Priority: Minor
>         Attachments: mysqlpatch.txt
>
>
> Running an embedded ActiveMQ database, using MySQL as the JDBC data source 
> worked fine under MySQL 5.4.  After upgrading to MySQL 5.5.5, ActiveMQ works 
> fine as long as the three required tables in the activemq database already 
> exist (activemq_acks, activemq_lock, activemq_msgs).  However, if they don't 
> exist, it fails to create the tables, whereas the tables would be 
> automatically created under MySQL 5.4.
> The problem appears to be in the create table script that's used.  In 
> previous versions of MySQL, it was legal (though deprecated as of 4.1) to 
> specify the engine using the "TYPE=INNODB" syntax.  The preferred 
> non-deprecated way to do it was to use "ENGINE=INNODB" instead.  Under 5.5.5, 
> it appears that the "TYPE" syntax is now completely illegal, requiring use of 
> the "ENGINE" syntax instead.
> A relevant MySQL bug discussing the issue: 
> http://bugs.mysql.com/bug.php?id=17501
> The following is an example of the actual SQL that is generated by ActiveMQ:
> CREATE TABLE ACTIVEMQ_MSGS(ID BIGINT NOT NULL, CONTAINER VARCHAR(250),
> MSGID_PROD VARCHAR(250), MSGID_SEQ BIGINT, EXPIRATION BIGINT, MSG LONGBLOB, 
> PRIMARY KEY ( ID ) ) TYPE=INNODB
> I have not yet tested it, but it seems likely that the culprit is 
> MySqlJDBCAdapter.java.  It includes the line:
> String typeClause = " TYPE="+type;
> which should probably change to
> String typeClause = " ENGINE="+type;

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to