[hibernate-issues] [Hibernate-JIRA] Created: (HHH-2662) Workaround PostgreSQL issues in testsuite
Steve Ebersole (JIRA)
noreply at atlassian.com
Thu Jun 7 18:45:04 EDT 2007
Workaround PostgreSQL issues in testsuite
-----------------------------------------
Key: HHH-2662
URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-2662
Project: Hibernate3
Issue Type: Improvement
Components: testsuite
Environment: PostgreSQL
Reporter: Steve Ebersole
Assignee: Steve Ebersole
Fix For: 3.2.5, 3.3
Currently there are two specific issues with the Hibernate test suite running on PostgreSQL which requires specific work-arounds. Note that both of these really are bugs in the PostgreSQL driver/backend. But I'd like to not keep getting spammed from CC builds because of this ;)
1) unspecified primitive char values. java initializes these as '\0'. For char values mapped via CharacterType, we then take that and bind it to the PS as a string (setString). The problem is that the PostgreSQL backend is all C, where '\0' has special meaning (it used as the "string terminator" character). Anyway, the driver/backend do not handle this value even though it is in fact a valid java character. The workaround is to convert these to non-primitive java.lang.Character and set to null.
2) I dont even know how to categorize this one yet really. Its a strange issue in regards to transaction state maintained by the driver/connection in autocommit scenarios. This has an interesting manifestation in the Hibernate testsuite. Say I have two test methods, testA and testB. testA executes first, followed by testB. testA is explicitly checking some exception condition and is using auto-commit. So the test "passes" (by the exception occurring and being caught/handled). The connection is returned to the pool. Next testB starts, and it is using explicit transactions. It fails. The reason for the failure is a driver error: [ERROR: current transaction is aborted, commands ignored until end of transaction block]. The cause is because the connection did not "clean itself up" after the last test. The work around here is to use explicit transactions in testA...
--
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.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the hibernate-issues
mailing list