openjpa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Albert Lee (JIRA)" <j...@apache.org>
Subject [jira] [Created] (OPENJPA-2232) TestAudit failed against databases other than Derby
Date Mon, 16 Jul 2012 13:54:34 GMT
Albert Lee created OPENJPA-2232:
-----------------------------------

             Summary: TestAudit failed against databases other than Derby
                 Key: OPENJPA-2232
                 URL: https://issues.apache.org/jira/browse/OPENJPA-2232
             Project: OpenJPA
          Issue Type: Test
          Components: jdbc
    Affects Versions: 2.3.0
            Reporter: Albert Lee


After TestAudit is changed/introduced recently, this test failed on some database platforms
yielding the following exception:

TestAudit.testAuditorIsConfigured (org.apache.openjpa.audit)
    « hide details
    <openjpa-2.3.0-SNAPSHOT-runknown fatal store error> org.apache.openjpa.persistence.RollbackException:
The transaction has been rolled back.  See the nested exceptions for details on the errors
that occurred.
    FailedObject: org.apache.openjpa.audit.X@df0dfb
        at org.apache.openjpa.persistence.EntityManagerImpl.commit(EntityManagerImpl.java:594)
        at org.apache.openjpa.audit.TestAudit.createManagedObject(TestAudit.java:64)
        at org.apache.openjpa.audit.TestAudit.setUp(TestAudit.java:52)
        at junit.framework.TestCase.runBare(TestCase.java:125)
        at junit.framework.TestResult$1.protect(TestResult.java:106)
        at junit.framework.TestResult.runProtected(TestResult.java:124)
        at junit.framework.TestResult.run(TestResult.java:109)
        at junit.framework.TestCase.run(TestCase.java:118)
        at junit.framework.TestSuite.runTest(TestSuite.java:208)
        at junit.framework.TestSuite.run(TestSuite.java:203)
        at sun.reflect.GeneratedMethodAccessor54.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.maven.surefire.junit.JUnitTestSet.execute(JUnitTestSet.java:213)
        at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:115)
        at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:102)
        at org.apache.maven.surefire.Surefire.run(Surefire.java:180)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:350)
        at org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:1021)
    Caused by: <openjpa-2.3.0-SNAPSHOT-runknown fatal store error> org.apache.openjpa.persistence.EntityExistsException:
The transaction has been rolled back.  See the nested exceptions for details on the errors
that occurred.
    FailedObject: org.apache.openjpa.audit.X@df0dfb
        at org.apache.openjpa.kernel.BrokerImpl.newFlushException(BrokerImpl.java:2339)
        at org.apache.openjpa.kernel.BrokerImpl.flush(BrokerImpl.java:2176)
        at org.apache.openjpa.kernel.BrokerImpl.flushSafe(BrokerImpl.java:2074)
        at org.apache.openjpa.kernel.BrokerImpl.beforeCompletion(BrokerImpl.java:1992)
        at org.apache.openjpa.kernel.LocalManagedRuntime.commit(LocalManagedRuntime.java:81)
        at org.apache.openjpa.kernel.BrokerImpl.commit(BrokerImpl.java:1516)
        at org.apache.openjpa.kernel.DelegatingBroker.commit(DelegatingBroker.java:933)
        at org.apache.openjpa.persistence.EntityManagerImpl.commit(EntityManagerImpl.java:570)
        ... 22 more
    Caused by: <openjpa-2.3.0-SNAPSHOT-runknown fatal store error> org.apache.openjpa.persistence.EntityExistsException:
Violation of PRIMARY KEY constraint 'PK__X__22E905E4'. Cannot insert duplicate key in object
'dbo.X'. {prepstmnt 22424958 INSERT INTO X (id, name, price) VALUES (?, ?, ?)} [code=2627,
state=23000]
    FailedObject: org.apache.openjpa.audit.X@df0dfb
        at org.apache.openjpa.jdbc.sql.DBDictionary.narrow(DBDictionary.java:4926)
        at org.apache.openjpa.jdbc.sql.DBDictionary.newStoreException(DBDictionary.java:4901)
        at org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:136)
        at org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:78)
        at org.apache.openjpa.jdbc.kernel.PreparedStatementManagerImpl.flushAndUpdate(PreparedStatementManagerImpl.java:143)
        at org.apache.openjpa.jdbc.kernel.BatchingPreparedStatementManagerImpl.flushAndUpdate(BatchingPreparedStatementManagerImpl.java:79)
        at org.apache.openjpa.jdbc.kernel.PreparedStatementManagerImpl.flushInternal(PreparedStatementManagerImpl.java:99)
        at org.apache.openjpa.jdbc.kernel.PreparedStatementManagerImpl.flush(PreparedStatementManagerImpl.java:87)
        at org.apache.openjpa.jdbc.kernel.ConstraintUpdateManager.flush(ConstraintUpdateManager.java:550)
        at org.apache.openjpa.jdbc.kernel.ConstraintUpdateManager.flush(ConstraintUpdateManager.java:106)
        at org.apache.openjpa.jdbc.kernel.BatchingConstraintUpdateManager.flush(BatchingConstraintUpdateManager.java:59)
        at org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.flush(AbstractUpdateManager.java:105)
        at org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.flush(AbstractUpdateManager.java:78)
        at org.apache.openjpa.jdbc.kernel.JDBCStoreManager.flush(JDBCStoreManager.java:735)
        at org.apache.openjpa.kernel.DelegatingStoreManager.flush(DelegatingStoreManager.java:131)
        ... 29 more
    Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: Violation of PRIMARY KEY
constraint 'PK__X__22E905E4'. Cannot insert duplicate key in object 'dbo.X'. {prepstmnt 22424958
INSERT INTO X (id, name, price) VALUES (?, ?, ?)} [code=2627, state=23000]
        at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:219)
        at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:195)
        at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.access$1000(LoggingConnectionDecorator.java:59)
        at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingPreparedStatement.executeUpdate(LoggingConnectionDecorator.java:1134)
        at org.apache.openjpa.lib.jdbc.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:272)
        at org.apache.openjpa.jdbc.kernel.JDBCStoreManager$CancelPreparedStatement.executeUpdate(JDBCStoreManager.java:1765)
        at org.apache.openjpa.jdbc.kernel.PreparedStatementManagerImpl.executeUpdate(PreparedStatementManagerImpl.java:267)
        at org.apache.openjpa.jdbc.kernel.PreparedStatementManagerImpl.flushAndUpdate(PreparedStatementManagerImpl.java:118)
        ... 39 more
    ------- Stderr: -------
    5  audit  INFO   [main] openjpa.Runtime - Starting OpenJPA 2.3.0-SNAPSHOT
    6  audit  INFO   [main] openjpa.jdbc.JDBC - Using dictionary class "org.apache.openjpa.jdbc.sql.SQLServerDictionary".

The test passed on Derby but failed in HSQL, MS SQLServer, MySQL, Oracle, DB2, Postgre, SolidDB
and may be other databases.

The set of tests failed are:

TestAudit.testAuditorIsConfigured (org.apache.openjpa.audit)
TestAudit.testNewInstancesAreAudited (org.apache.openjpa.audit)
TestAudit.testUpdateOutsideTransactionAreAudited (org.apache.openjpa.audit)
TestAudit.testUpdateInsideTransactionAreAudited (org.apache.openjpa.audit)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

       

Mime
View raw message