| Summary: | Documentation needed: dialect auto detection does not work properly for MySQL | ||
|---|---|---|---|
| Product: | [JBoss] JBoss Enterprise SOA Platform 5 | Reporter: | Jiri Pechanec <jpechane> |
| Component: | Documentation, EDS | Assignee: | Dana Mison <dmison> |
| Status: | CLOSED NEXTRELEASE | QA Contact: | |
| Severity: | urgent | Docs Contact: | |
| Priority: | urgent | ||
| Version: | 5.1.0.ER6 | CC: | rhauch, vhalbert |
| Target Milestone: | --- | ||
| Target Release: | 5.1.0.CR1 | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| URL: | http://jira.jboss.org/jira/browse/SOA-2707 | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2011-01-18 18:46:25 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
|
Description
Jiri Pechanec
2010-12-21 12:45:35 UTC
Link: Added: This issue Cloned to SOA-2711 ModeShape simply relies upon Hibernate to do the auto-detection of the dialect, and even Hibernate states that auto-detection will work in most situations (see http://docs.jboss.org/hibernate/core/3.6/reference/en-US/html_single/#portability-dialectresolver). I suspect that with MySQL, Hibernate is If not, then Hibernate chooses the safest MySQL dialec, which is MySQL 4 MyISAM. Thus, this probably fails on MySQL 5 InnoDB. So it is probably best to document this in the product. ModeShape will add a note under MODE-1064. Further investigation is required to determine the real impact of auto-detecting the wrong dialect. This appears to be a hibernate issue and how/what its auto detecting, not something that ModeShape can control. We will need to document the issue. Release Notes Docs Status: Added: Documented as Known Issue Release Notes Text: Added: Hibernate states that auto-detection will work in most situations. It will attempt to auto-detect the database dialect, and will choose the safest MySQL dialec, which is MySQL 4 MyISAM. Release Notes Text: Removed: Hibernate states that auto-detection will work in most situations. It will attempt to auto-detect the database dialect, and will choose the safest MySQL dialec, which is MySQL 4 MyISAM. Added: If the dialect is not specifically stated for the JPA source in the modeshape-config.xml, then the ModeShape JPA connector will rely on Hibernate and its auto-detection to determine the dialect. However, in some cases, Hibernate will attempt to auto-detect the database dialect, and will choose the safest MySQL dialect, which is MySQL 4 MyISAM, instead othe MySQL 5 dialect. To work around the issue where Hibernate selects the wrong dialect, you need to explicitly specify the dialect in the modeshape-config.xml. By default, the eds-store has the dialect specified. For differences between MySQL 4 and 5, see http://dev.mysql.com/doc/refman/5.0/en/development-history.html for the major features between releases. Release Notes Text: Removed: If the dialect is not specifically stated for the JPA source in the modeshape-config.xml, then the ModeShape JPA connector will rely on Hibernate and its auto-detection to determine the dialect. However, in some cases, Hibernate will attempt to auto-detect the database dialect, and will choose the safest MySQL dialect, which is MySQL 4 MyISAM, instead othe MySQL 5 dialect. To work around the issue where Hibernate selects the wrong dialect, you need to explicitly specify the dialect in the modeshape-config.xml. By default, the eds-store has the dialect specified. For differences between MySQL 4 and 5, see http://dev.mysql.com/doc/refman/5.0/en/development-history.html for the major features between releases. Added: If the dialect is not specifically stated for the JPA source in the modeshape-config.xml, then the ModeShape JPA connector will rely on Hibernate and its auto-detection to determine the dialect. When Hibernate auto-detection is used with MySQL, Hibernate may choose the safest MySQL dialect, which is MySQL 4 MyISAM. Therefore, if your database is using MySQL 5 or MySQL InnoDB, this auto-detection will not be correct. (For differences between MySQL 4 and 5, see http://dev.mysql.com/doc/refman/5.0/en/development-history.html for the major features between releases.) In this case and any other where auto-detection does not work, simply specify explicitly in the modeshape-config.xml configuration file the correct dialect. By default, the modeshape-config.xml file does specify the dialect for the 'eds-store'. Document as a KI. Writer: Added: Darrin Release Notes Text: Removed: If the dialect is not specifically stated for the JPA source in the modeshape-config.xml, then the ModeShape JPA connector will rely on Hibernate and its auto-detection to determine the dialect. When Hibernate auto-detection is used with MySQL, Hibernate may choose the safest MySQL dialect, which is MySQL 4 MyISAM. Therefore, if your database is using MySQL 5 or MySQL InnoDB, this auto-detection will not be correct. (For differences between MySQL 4 and 5, see http://dev.mysql.com/doc/refman/5.0/en/development-history.html for the major features between releases.) In this case and any other where auto-detection does not work, simply specify explicitly in the modeshape-config.xml configuration file the correct dialect. By default, the modeshape-config.xml file does specify the dialect for the 'eds-store'. Added: If the dialect is not specifically stated for the JPA source in the modeshape-config.xml, then the ModeShape JPA connector relies on Hibernate auto-detection to determine the dialect. However Hibernate dialect auto-detection does not work reliably with MySQL databases. When using MySQL, you need to set the correct dialect in the modeshape-config.xml configuration file. By default, the modeshape-config.xml file does specify the dialect for the 'eds-store'. Affects: Added: [Documentation (Ref Guide, User Guide, etc.), Release Notes] |