Hi Milosz,
It seems that PostgreSQL is having problems with TemporalType.DATE fields.
The two tests below are failing because the RuntimeTest1 entity definition
can't be persisted to the database. The field it's complaining about is
below...
@Temporal(TemporalType.DATE)
private Date dateField;
Any uniqueness with Date fields in PostgreSQL?
Kevin
On Sat, Jan 23, 2010 at 7:31 AM, Miłosz Tylenda <[email protected]> wrote:
> Hi All.
>
> I re-ran the tests on PostgreSQL and the auto-increment failures vanished.
>
> What's new, it is something related to cache or date handling - I observed
> two new failures. Stack traces below.
>
> Regards,
> Milosz
>
>
> testQueryImplicitEvictions(org.apache.openjpa.persistence.datacache.TestSJVMCache)
>
> testQueryImplicitEvictions(org.apache.openjpa.persistence.datacache.TestDataCachePCDataGenerator)
>
>
> Tests run: 30, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 57.511 sec
> <<< FAILURE!
> testQueryImplicitEvictions(org.apache.openjpa.persistence.datacache.TestSJVMCache)
> Time elapsed: 1.441 sec <<< ERROR!
> <openjpa-2.0.0-SNAPSHOT-rsvn: This client is too old to work with working
> copy '/alt/eclipse322/workspace/open-jpa/openjpa-lib/..'; please get a newer
> Subversion client fatal store error>
> org.apache.openjpa.persistence.RollbackExc
> eption: The transaction has been rolled back. See the nested exceptions
> for details on the errors that occurred.
> at
> org.apache.openjpa.persistence.EntityManagerImpl.commit(EntityManagerImpl.java:568)
> at
> org.apache.openjpa.persistence.common.utils.AbstractTestCase.endTx(AbstractTestCase.java:278)
> at
> org.apache.openjpa.persistence.datacache.CacheTest.testQueryImplicitEvictions(CacheTest.java:1135)
> 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 junit.framework.TestCase.runTest(TestCase.java:154)
> at
> org.apache.openjpa.persistence.test.AbstractPersistenceTestCase.runTest(AbstractPersistenceTestCase.java:514)
> at junit.framework.TestCase.runBare(TestCase.java:127)
> at
> org.apache.openjpa.persistence.test.AbstractPersistenceTestCase.runBare(AbstractPersistenceTestCase.java:501)
> at
> org.apache.openjpa.persistence.test.AbstractPersistenceTestCase.runBare(AbstractPersistenceTestCase.java:477)
> 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
> org.apache.openjpa.persistence.test.AbstractPersistenceTestCase.run(AbstractPersistenceTestCase.java:177)
> 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:140)
> at
> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127)
> at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
> 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:345)
> at
> org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:1009)
> Caused by: <openjpa-2.0.0-SNAPSHOT-rsvn: This client is too old to work
> with working copy '/alt/eclipse322/workspace/open-jpa/openjpa-lib/..';
> please get a newer Subversion client fatal general error>
> org.apache.openjpa.persistenc
> e.PersistenceException: The transaction has been rolled back. See the
> nested exceptions for details on the errors that occurred.
> at
> org.apache.openjpa.kernel.BrokerImpl.newFlushException(BrokerImpl.java:2273)
> at org.apache.openjpa.kernel.BrokerImpl.flush(BrokerImpl.java:2115)
> at
> org.apache.openjpa.kernel.BrokerImpl.flushSafe(BrokerImpl.java:2013)
> at
> org.apache.openjpa.kernel.BrokerImpl.beforeCompletion(BrokerImpl.java:1931)
> at
> org.apache.openjpa.kernel.LocalManagedRuntime.commit(LocalManagedRuntime.java:81)
> at org.apache.openjpa.kernel.BrokerImpl.commit(BrokerImpl.java:1455)
> at
> org.apache.openjpa.kernel.DelegatingBroker.commit(DelegatingBroker.java:903)
> at
> org.apache.openjpa.persistence.EntityManagerImpl.commit(EntityManagerImpl.java:551)
> ... 31 more
> Caused by: <openjpa-2.0.0-SNAPSHOT-rsvn: This client is too old to work
> with working copy '/alt/eclipse322/workspace/open-jpa/openjpa-lib/..';
> please get a newer Subversion client nonfatal general error>
> org.apache.openjpa.persist
> ence.PersistenceException: ERROR: column "datefield" is of type abstime but
> expression is of type date
> Hint: You will need to rewrite or cast the expression.
> Position: 146 {prepstmnt 33138943 INSERT INTO RuntimeTest1 (id,
> bigDecimalField, bigIntegerField, booleanField, booleanObjField, byteField,
> byteObjfield, charField, charObjField, dateField, doubleField,
> doubleObjField, floatFiel
> d, floatObjField, intField, intObjField, localeField, longField,
> longObjField, shortField, shortObjField, stringField, transString, DTYPE,
> SELFONEONE_ID, TRANSFIELD_ID) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?,
> ?, ?, ?, ?, ?,
> ?, ?, ?, ?, ?, ?, ?, ?) [params=(long) 51, (null) null, (null) null,
> (boolean) false, (null) null, (byte) 0, (null) null, (int) 0, (null) null,
> (null) null, (double) 0.0, (null) null, (float) 0.0, (null) null, (int) 0,
> (null) nul
> l, (null) null, (long) 0, (null) null, (short) 0, (null) null, (null) null,
> (null) null, (String) dataRt1, (null) null, (null) null]} [code=0,
> state=42804]
> FailedObject:
> org.apache.openjpa.persistence.datacache.common.apps.runtimete...@9da711
> at
> org.apache.openjpa.jdbc.sql.DBDictionary.narrow(DBDictionary.java:4831)
> at
> org.apache.openjpa.jdbc.sql.DBDictionary.newStoreException(DBDictionary.java:4784)
> at
> org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:137)
> 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:80)
> 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:103)
> at
> org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.flush(AbstractUpdateManager.java:76)
> at
> org.apache.openjpa.jdbc.kernel.JDBCStoreManager.flush(JDBCStoreManager.java:680)
> at
> org.apache.openjpa.kernel.DelegatingStoreManager.flush(DelegatingStoreManager.java:130)
> at
> org.apache.openjpa.datacache.DataCacheStoreManager.flush(DataCacheStoreManager.java:540)
> at
> org.apache.openjpa.kernel.DelegatingStoreManager.flush(DelegatingStoreManager.java:130)
> ... 38 more
>
>
> Tests run: 30, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 58.9 sec
> <<< FAILURE!
> testQueryImplicitEvictions(org.apache.openjpa.persistence.datacache.TestDataCachePCDataGenerator)
> Time elapsed: 1.739 sec <<< ERROR!
> <openjpa-2.0.0-SNAPSHOT-rsvn: This client is too old to work with working
> copy '/alt/eclipse322/workspace/open-jpa/openjpa-lib/..'; please get a newer
> Subversion client fatal store error>
> org.apache.openjpa.persistence.RollbackExc
> eption: The transaction has been rolled back. See the nested exceptions
> for details on the errors that occurred.
> at
> org.apache.openjpa.persistence.EntityManagerImpl.commit(EntityManagerImpl.java:568)
> at
> org.apache.openjpa.persistence.common.utils.AbstractTestCase.endTx(AbstractTestCase.java:278)
> at
> org.apache.openjpa.persistence.datacache.CacheTest.testQueryImplicitEvictions(CacheTest.java:1135)
> 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 junit.framework.TestCase.runTest(TestCase.java:154)
> at
> org.apache.openjpa.persistence.test.AbstractPersistenceTestCase.runTest(AbstractPersistenceTestCase.java:514)
> at junit.framework.TestCase.runBare(TestCase.java:127)
> at
> org.apache.openjpa.persistence.test.AbstractPersistenceTestCase.runBare(AbstractPersistenceTestCase.java:501)
> at
> org.apache.openjpa.persistence.test.AbstractPersistenceTestCase.runBare(AbstractPersistenceTestCase.java:477)
> 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
> org.apache.openjpa.persistence.test.AbstractPersistenceTestCase.run(AbstractPersistenceTestCase.java:177)
> 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:140)
> at
> org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127)
> at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
> 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:345)
> at
> org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:1009)
> Caused by: <openjpa-2.0.0-SNAPSHOT-rsvn: This client is too old to work
> with working copy '/alt/eclipse322/workspace/open-jpa/openjpa-lib/..';
> please get a newer Subversion client fatal general error>
> org.apache.openjpa.persistenc
> e.PersistenceException: The transaction has been rolled back. See the
> nested exceptions for details on the errors that occurred.
> at
> org.apache.openjpa.kernel.BrokerImpl.newFlushException(BrokerImpl.java:2273)
> at org.apache.openjpa.kernel.BrokerImpl.flush(BrokerImpl.java:2115)
> at
> org.apache.openjpa.kernel.BrokerImpl.flushSafe(BrokerImpl.java:2013)
> at
> org.apache.openjpa.kernel.BrokerImpl.beforeCompletion(BrokerImpl.java:1931)
> at
> org.apache.openjpa.kernel.LocalManagedRuntime.commit(LocalManagedRuntime.java:81)
> at org.apache.openjpa.kernel.BrokerImpl.commit(BrokerImpl.java:1455)
> at
> org.apache.openjpa.kernel.DelegatingBroker.commit(DelegatingBroker.java:903)
> at
> org.apache.openjpa.persistence.EntityManagerImpl.commit(EntityManagerImpl.java:551)
> ... 31 more
> Caused by: <openjpa-2.0.0-SNAPSHOT-rsvn: This client is too old to work
> with working copy '/alt/eclipse322/workspace/open-jpa/openjpa-lib/..';
> please get a newer Subversion client nonfatal general error>
> org.apache.openjpa.persist
> ence.PersistenceException: ERROR: column "datefield" is of type abstime but
> expression is of type date
> Hint: You will need to rewrite or cast the expression.
> Position: 146 {prepstmnt 7445208 INSERT INTO RuntimeTest1 (id,
> bigDecimalField, bigIntegerField, booleanField, booleanObjField, byteField,
> byteObjfield, charField, charObjField, dateField, doubleField,
> doubleObjField, floatField
> , floatObjField, intField, intObjField, localeField, longField,
> longObjField, shortField, shortObjField, stringField, transString, DTYPE,
> SELFONEONE_ID, TRANSFIELD_ID) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?,
> ?, ?, ?, ?, ?,
> ?, ?, ?, ?, ?, ?, ?, ?) [params=(long) 51, (null) null, (null) null,
> (boolean) false, (null) null, (byte) 0, (null) null, (int) 0, (null) null,
> (null) null, (double) 0.0, (null) null, (float) 0.0, (null) null, (int) 0,
> (null) null
> , (null) null, (long) 0, (null) null, (short) 0, (null) null, (null) null,
> (null) null, (String) dataRt1, (null) null, (null) null]} [code=0,
> state=42804]
> FailedObject:
> org.apache.openjpa.persistence.datacache.common.apps.runtimete...@768bd0
> at
> org.apache.openjpa.jdbc.sql.DBDictionary.narrow(DBDictionary.java:4831)
> at
> org.apache.openjpa.jdbc.sql.DBDictionary.newStoreException(DBDictionary.java:4784)
> at
> org.apache.openjpa.jdbc.sql.SQLExceptions.getStore(SQLExceptions.java:137)
> 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:80)
> 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:103)
> at
> org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.flush(AbstractUpdateManager.java:76)
> at
> org.apache.openjpa.jdbc.kernel.JDBCStoreManager.flush(JDBCStoreManager.java:680)
> at
> org.apache.openjpa.kernel.DelegatingStoreManager.flush(DelegatingStoreManager.java:130)
> at
> org.apache.openjpa.datacache.DataCacheStoreManager.flush(DataCacheStoreManager.java:540)
> at
> org.apache.openjpa.kernel.DelegatingStoreManager.flush(DelegatingStoreManager.java:130)
> ... 38 more
>
>
>
>
> > Milosz,
> >
> > Thanks again for running the jUnits on PostgreSQL. It uncovered a nasty
> pest, particularly unfriendly to PostgreSQL. The problem is fixed and the
> changes are in trunk. rev. 902177.
> >
> > -Jeremy
> >
> >
> > On Tue, Jan 19, 2010 at 3:22 PM, Miłosz Tylenda <[email protected]> wrote:
> >
> > Hi All,
> >
> > Recently the test suite on PostgreSQL got a few new failures related to
> auto-increment columns, probably after introducing delimiter support. I have
> communicated the details to Jeremy.
> >
> > Also, OPENJPA-1289 seems to be resolved.
> >
> > Regards,
> > Milosz
> >
> >
> >
> > > I'd also like to see OPENJPA-1410 make it into the release. This bug
> > > prevents OpenJPA 2.0 from running in some environments. Donald and I
> have
> > > been looking into the problem and it is tagged as critical.
> > >
> > > -Jeremy
> > >
> > > On Tue, Jan 19, 2010 at 11:44 AM, Michael Dick <
> [email protected]>wrote:
> > >
> > > > There's also the issue of WriteBehind support (OPENJPA-1150). This
> work
> > > > never got to the point where I'd be really comfortable including it
> in
> > > > 2.0.0. 2.1.0 would be a better target though and I'm inclined to back
> out
> > > > the code for the upcoming release.
> > > >
> > > > -mike
> > > >
> > > >
> > > > On Tue, Jan 19, 2010 at 11:15 AM, Kevin Sutter <[email protected]>
> wrote:
> > > >
> > > > > Hi Donald,
> > > > > I'd like to get the default settings for the DataCache figured out
> before
> > > > > we
> > > > > cut a 2.0 release [1]. We've been running with this turned "on"
> for our
> > > > > performance benchmarks, so why not have this as our default? I'm
> running
> > > > > our JUnit bucket as we speak...
> > > > >
> > > > > Thanks,
> > > > > Kevin
> > > > >
> > > > > [1] https://issues.apache.org/jira/browse/OPENJPA-1469
> > > > >
> > > > > On Mon, Jan 18, 2010 at 9:57 PM, Donald Woods <[email protected]>
> wrote:
> > > > >
> > > > > > We're in pretty good shape for a 2.0.0 release.
> > > > > > Trunk is passing the JPA 2.0 TCK.
> > > > > > We have the broadest/best junit results over Derby, DB2, Oracle,
> MySQL
> > > > > > and MS SQL as we have for any release.
> > > > > >
> > > > > > Now, we could either release a Milestone 4 release and continue
> to work
> > > > > > on docs, samples, performance and the backlog issues or we could
> go
> > > > > > ahead and plan on cutting a 2.0.0 branch later this week with
> plans to
> > > > > > continue improving the 2.0 codebase in maintenance releases at
> least
> > > > > > every quarter.
> > > > > >
> > > > > > If you have any critical issues that you feel need to be resolved
> > > > before
> > > > > > we release 2.0.0, please update the JIRA Fix Version to 2.0.0 and
> set
> > > > > > the Priority, along with replying to this discussion thread with
> the
> > > > > > details of the issues you would like considered. After a couple
> days
> > > > of
> > > > > > discussions, we'll revisit the open issues and decide on which
> route to
> > > > > > take.
> > > > > >
> > > > > >
> > > > > > Thanks,
> > > > > > Donald
> > > > > >
> > > > >
> > > >
> > >
> >
> >
>
>
>
>
>
>
>