Ari Maniatis commented on CAY-1050:
-----------------------------------
Adding Andrus's dev mailing list response to this task:
---------
Looks like a limitation of MySQLSniffer. It does this to detect MySQL default behavior:
ResultSet rs = statement.executeQuery("SHOW VARIABLES LIKE 'table_type'");
if (rs.next()) {
String tableType = rs.getString(2);
supportFK = tableType != null && tableType.toUpperCase().equals("INNODB");
}
But doesn't go far enough to actually use it as a table type in 'createTable'. Shouldn't be too hard to fix.
> MySQL engine = NDBCLUSTER
> -------------------------
>
> Key: CAY-1050
> URL: https://issues.apache.org/cayenne/browse/CAY-1050
> Project: Cayenne
> Issue Type: Bug
> Components: Cayenne Core Library
> Environment: 3.0M3
> Reporter: Borut BolĨina
> Assignee: Andrus Adamchik
>
> If I am using AutoAdapter and DbGenerator for table creation with MySQL 5 and table_type variable in MySQL is set to MyISAM, then according to http://cayenne.apache.org/doc/api/org/apache/cayenne/dba/mysql/MySQLAdapter.html I thought the CREATE TABLE string when the generator is run would cause the engine to be MyISAM or whatever the table_type is set to, but it gives me InnoDB:
> INFO [28 Apr 2008 11:14:57.877] Detected and installed adapter: org.apache.cayenne.dba.mysql.MySQLAdapter
> INFO [28 Apr 2008 11:14:57.884] CREATE TABLE currency_rate (country VARCHAR(255) NOT NULL, currency_code VARCHAR(255) NOT NULL, currency_name
> VARCHAR(255) NOT NULL, currency_number INT NOT NULL, date DATETIME NULL, id INT NOT NULL, rate DECIMAL(19, 4) NOT NULL, PRIMARY KEY (id)) ENG
> INE=InnoDB
> Now, we are planning to use NDBCLUSTER table types and if this auto detection does not work, what is the way to set engine type via API?
-- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
This archive was generated by hypermail 2.0.0 : Thu May 08 2008 - 05:08:19 EDT