[
http://opensource.atlassian.com/projects/hibernate/browse/HHH-4732?page=c...
]
Steve Ebersole commented on HHH-4732:
-------------------------------------
1) Yes I understand there are existing usages of this pattern. In fact that is how it was
always done historically. Changing these all at once is not feasible, so we change them
as targets of opportunity. And here we are...
2) So the SQL cannot be dynamic? Not sure I follow your last point... where did you see
me make any reference to {{TeradataDialect}} in my example code? Overall the problem with
doing this in {{SchemaExport}} instead of in {{Configuration}} as called from
{{SchemaExport}} is that {{SchemaExport}} has no idea what these statements are about,
which is why you end up filtering drop statements for tables, indexes, etc to find the
ones pertaining to foreign keys. If that is how it has to be because Teradata does not
support some form of dynamic sql to achieve this then ok, its how it needs to be.
However, the thing we want to make sure happens is that this happens even if they select
to write the scrip to file instead of (or in addition to) executing it (providing we have
a connection of course).
Update Teradata Dialect for Teradata 13.0
-----------------------------------------
Key: HHH-4732
URL:
http://opensource.atlassian.com/projects/hibernate/browse/HHH-4732
Project: Hibernate Core
Issue Type: Improvement
Components: core
Affects Versions: 3.3.2
Environment: Hibernate 3.3.2/ Teradata JDBC Driver 13.0, Teradata Database 13.0
Reporter: David Repshas
Assignee: Strong Liu
Attachments: teradata.zip, teradataDiff.zip, testsuiteMods.zip
Would like to update Teradata Dialect to work with Teradata Database 13.0.
I've include the following files with changes as noted:
org.hibernate.dialect.dialect.java
- added include of java.sql.statement
- added code to support the removal of temporary
files created when using referential integrity
The three new methods are:
public boolean supportsDropPreProcess()
public String performDropPreProcess(Statement stmt, String dropSql) throws
SQLException
public void performDropPostProcess(Statement stmt, String dropSql) throws
SQLException
==================================
org.hibernate.dialect.TeradataDialect.java
- added new include files
- modified registerFunction calls for "current_time" and
"current_date"
- put registerKeyword list in alphabetical order and added keywords:
column,map,password,summary, type, value and year
- changed "getAddColumnString()" to return "Add"
- added new methods:
public ViolatedConstraintNameExtracter getViolatedConstraintNameExtracter()
public String extractConstraintName(SQLException sqlex)
public boolean supportsNotNullUnique()
public boolean supportsExpectedLobUsagePattern()
public boolean supportsUnboundedLobLocatorMaterialization()
public boolean supportsDropPreProcess()
public String performDropPreProcess(Statement stmt, String dropSql) throws
SQLException
public void performDropPostProcess(Statement stmt, String dropSql) throws SQLException
==================================
org.hibernate.tool.hbm2ddl.SchemaExport
- added hooks for new methods:
supportsDropPreProcess,performDropPreProcess and performDropPostProcess
==================================
Also made some changes to some of the files in testsuite:
=============================================
test/hql/astParserLoadingTest.java
- Add instance check of TeradataDialect to get correct behavior
=============================================
test/legacy/foobartest.java
- Add instance check of TeradataDialect to get correct behavior
- modified SQL: Teradata requires "<>" rather than "!="
=============================================
test/typeParameters\typeparametertest.java
-needed to disable these tests as Teradata locking was causing
a deadlock situation when they run
=============================================
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://opensource.atlassian.com/projects/hibernate/secure/Administrators....
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira