[ http://issues.apache.org/jira/browse/JDO-375?page=all ]

Michael Bouschen updated JDO-375:
---------------------------------

    Attachment: JDO-375-2.patch

The attached patch JDO-375-2.patch implements Craig's proposal to remove 
classes Person and Emplyoee from the list of teardown classes in 
CompletenessTest. I propose this change should go into the trunk and the 2.0 
branch.

The patch might change the order in which instances get deleted and this might 
affect the cleanup in the companyPMInterface test configuration. Please let me 
know.

> Company model tables are not fully cleaned up
> ---------------------------------------------
>
>          Key: JDO-375
>          URL: http://issues.apache.org/jira/browse/JDO-375
>      Project: JDO
>         Type: Bug

>   Components: tck20
>     Versions: JDO 2 rc1
>     Reporter: Erik Bengtson
>     Assignee: Erik Bengtson
>      Fix For: JDO 2 final
>  Attachments: JDO-375-2.patch, JDO-375.patch
>
> Tables from company model does not appear to be clean after run.
> I can't say if this is a JPOX or TCK issue, because I did not dig into the 
> issue.
> On second run, exceptions are like
> > 1)
> > test(org.apache.jdo.tck.api.persistencemanager.extent.GetExtentWithInstancesMadePersistentViaReachability)javax.jdo.JDODataStoreException:
> > Insert request failed: INSERT INTO applicationidentity0.COMPANIES
> > ("NAME",FOUNDEDDATE,ADDRID,CITY,COUNTRY,"STATE",STREET,ZIPCODE,ID,DISCRIMINATOR)
> > VALUES (?,?,?,?,?,?,?,?,?,?)
> >         at 
> > org.jpox.store.rdbms.request.InsertRequest.execute(InsertRequest.java:393)
> >         at 
> > org.jpox.store.rdbms.table.ClassTable.insert(ClassTable.java:2171)
> >         at org.jpox.store.StoreManager.insert(StoreManager.java:757)
> >         at
> > org.jpox.state.StateManagerImpl.internalMakePersistent(StateManagerImpl.java:3456)
> >         at 
> > org.jpox.state.StateManagerImpl.makePersistent(StateManagerImpl.java:3429)
> >         at
> > org.jpox.AbstractPersistenceManager.internalMakePersistent(AbstractPersistenceManager.java:1150)
> >         at
> > org.jpox.AbstractPersistenceManager.makePersistent(AbstractPersistenceManager.java:1205)
> >         at
> > org.apache.jdo.tck.api.persistencemanager.extent.GetExtentWithInstancesMadePersistentViaReachability.createObjects(GetExtentWithInstancesMadePersistentViaReachability.java:72)
> >         at
> > org.apache.jdo.tck.api.persistencemanager.extent.GetExtentWithInstancesMadePersistentViaReachability.test(GetExtentWithInstancesMadePersistentViaReachability.java:63)
> >         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >         at
> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> >         at
> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> >         at org.apache.jdo.tck.JDO_Test.runBare(JDO_Test.java:237)
> >         at 
> > org.apache.jdo.tck.util.BatchTestRunner.doRun(BatchTestRunner.java:107)
> >         at 
> > org.apache.jdo.tck.util.BatchTestRunner.start(BatchTestRunner.java:147)
> >         at 
> > org.apache.jdo.tck.util.BatchTestRunner.main(BatchTestRunner.java:122)
> > NestedThrowablesStackTrace:
> > ERROR 23505: The statement was aborted because it would have caused a 
> > duplicate
> > key value in a unique or primary key constraint or unique index identified 
> > by
> > 'COMPS_PK' defined on 'COMPANIES'.
> >         at 
> > org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
> >         at 
> > org.apache.derby.impl.sql.execute.IndexChanger.insertAndCheckDups(Unknown
> > Source)
> >         at org.apache.derby.impl.sql.execute.IndexChanger.doInsert(Unknown 
> > Source)
> >         at org.apache.derby.impl.sql.execute.IndexChanger.insert(Unknown 
> > Source)
> >         at org.apache.derby.impl.sql.execute.IndexSetChanger.insert(Unknown 
> > Source)
> >         at 
> > org.apache.derby.impl.sql.execute.RowChangerImpl.insertRow(Unknown Source)
> >         at 
> > org.apache.derby.impl.sql.execute.InsertResultSet.normalInsertCore(Unknown
> > Source)
> >         at org.apache.derby.impl.sql.execute.InsertResultSet.open(Unknown 
> > Source)
> >         at 
> > org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source)
> >         at 
> > org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source)
> >         at 
> > org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(Unknown
> > Source)
> >         at 
> > org.apache.derby.impl.jdbc.EmbedPreparedStatement.execute(Unknown Source)
> >         at
> > com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.execute(NewProxyPreparedStatement.java:911)
> >         at
> > org.jpox.store.rdbms.ParamLoggingPreparedStatement.execute(ParamLoggingPreparedStatement.java:212)
> >         at 
> > org.jpox.store.rdbms.request.Request.executeUpdate(Request.java:88)
> >         at 
> > org.jpox.store.rdbms.request.InsertRequest.execute(InsertRequest.java:267)
> >         at 
> > org.jpox.store.rdbms.table.ClassTable.insert(ClassTable.java:2171)
> >         at org.jpox.store.StoreManager.insert(StoreManager.java:757)
> >         at
> > org.jpox.state.StateManagerImpl.internalMakePersistent(StateManagerImpl.java:3456)
> >         at 
> > org.jpox.state.StateManagerImpl.makePersistent(StateManagerImpl.java:3429)
> >         at
> > org.jpox.AbstractPersistenceManager.internalMakePersistent(AbstractPersistenceManager.java:1150)
> >         at
> > org.jpox.AbstractPersistenceManager.makePersistent(AbstractPersistenceManager.java:1205)
> >         at
> > org.apache.jdo.tck.api.persistencemanager.extent.GetExtentWithInstancesMadePersistentViaReachability.createObjects(GetExtentWithInstancesMadePersistentViaReachability.java:72)
> >         at
> > org.apache.jdo.tck.api.persistencemanager.extent.GetExtentWithInstancesMadePersistentViaReachability.test(GetExtentWithInstancesMadePersistentViaReachability.java:63)
> >         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >         at
> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> >         at
> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> >         at org.apache.jdo.tck.JDO_Test.runBare(JDO_Test.java:237)
> >         at 
> > org.apache.jdo.tck.util.BatchTestRunner.doRun(BatchTestRunner.java:107)
> >         at 
> > org.apache.jdo.tck.util.BatchTestRunner.start(BatchTestRunner.java:147)
> >         at 
> > org.apache.jdo.tck.util.BatchTestRunner.main(BatchTestRunner.java:122)
> > 2)
> > test(org.apache.jdo.tck.api.persistencemanager.extent.GetExtentWithSubclasses)javax.jdo.JDODataStoreException:
> > Insert request failed: INSERT INTO applicationidentity0.PERSONS
> > (ADDRID,CITY,COUNTRY,"STATE",STREET,ZIPCODE,FIRSTNAME,BIRTHDATE,MIDDLENAME,LASTNAME,PERSONID,DISCRIMINATOR)
> > VALUES (?,?,?,?,?,?,?,?,?,?,?,?)
> >         at 
> > org.jpox.store.rdbms.request.InsertRequest.execute(InsertRequest.java:393)
> >         at 
> > org.jpox.store.rdbms.table.ClassTable.insert(ClassTable.java:2171)
> >         at org.jpox.store.StoreManager.insert(StoreManager.java:757)
> >         at
> > org.jpox.state.StateManagerImpl.internalMakePersistent(StateManagerImpl.java:3456)
> >         at 
> > org.jpox.state.StateManagerImpl.makePersistent(StateManagerImpl.java:3429)
> >         at
> > org.jpox.AbstractPersistenceManager.internalMakePersistent(AbstractPersistenceManager.java:1150)
> >         at
> > org.jpox.AbstractPersistenceManager.makePersistent(AbstractPersistenceManager.java:1205)
> >         at
> > org.apache.jdo.tck.api.persistencemanager.extent.GetExtentWithSubclasses.createObjects(GetExtentWithSubclasses.java:86)
> >         at
> > org.apache.jdo.tck.api.persistencemanager.extent.GetExtentWithSubclasses.test(GetExtentWithSubclasses.java:73)
> >         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >         at
> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> >         at
> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> >         at org.apache.jdo.tck.JDO_Test.runBare(JDO_Test.java:237)
> >         at 
> > org.apache.jdo.tck.util.BatchTestRunner.doRun(BatchTestRunner.java:107)
> >         at 
> > org.apache.jdo.tck.util.BatchTestRunner.start(BatchTestRunner.java:147)
> >         at 
> > org.apache.jdo.tck.util.BatchTestRunner.main(BatchTestRunner.java:122)
> > NestedThrowablesStackTrace:
> > ERROR 23505: The statement was aborted because it would have caused a 
> > duplicate
> > key value in a unique or primary key constraint or unique index identified 
> > by
> > 'EMPS_PK' defined on 'PERSONS'.
> >         at 
> > org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
> >         at 
> > org.apache.derby.impl.sql.execute.IndexChanger.insertAndCheckDups(Unknown
> > Source)
> >         at org.apache.derby.impl.sql.execute.IndexChanger.doInsert(Unknown 
> > Source)
> >         at org.apache.derby.impl.sql.execute.IndexChanger.insert(Unknown 
> > Source)
> >         at org.apache.derby.impl.sql.execute.IndexSetChanger.insert(Unknown 
> > Source)
> >         at 
> > org.apache.derby.impl.sql.execute.RowChangerImpl.insertRow(Unknown Source)
> >         at 
> > org.apache.derby.impl.sql.execute.InsertResultSet.normalInsertCore(Unknown
> > Source)
> >         at org.apache.derby.impl.sql.execute.InsertResultSet.open(Unknown 
> > Source)
> >         at 
> > org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source)
> >         at 
> > org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source)
> >         at 
> > org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(Unknown
> > Source)
> >         at 
> > org.apache.derby.impl.jdbc.EmbedPreparedStatement.execute(Unknown Source)
> >         at
> > com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.execute(NewProxyPreparedStatement.java:911)
> >         at
> > org.jpox.store.rdbms.ParamLoggingPreparedStatement.execute(ParamLoggingPreparedStatement.java:212)
> >         at 
> > org.jpox.store.rdbms.request.Request.executeUpdate(Request.java:88)
> >         at 
> > org.jpox.store.rdbms.request.InsertRequest.execute(InsertRequest.java:267)
> >         at 
> > org.jpox.store.rdbms.table.ClassTable.insert(ClassTable.java:2171)
> >         at org.jpox.store.StoreManager.insert(StoreManager.java:757)
> >         at
> > org.jpox.state.StateManagerImpl.internalMakePersistent(StateManagerImpl.java:3456)
> >         at 
> > org.jpox.state.StateManagerImpl.makePersistent(StateManagerImpl.java:3429)
> >         at
> > org.jpox.AbstractPersistenceManager.internalMakePersistent(AbstractPersistenceManager.java:1150)
> >         at
> > org.jpox.AbstractPersistenceManager.makePersistent(AbstractPersistenceManager.java:1205)
> >         at
> > org.apache.jdo.tck.api.persistencemanager.extent.GetExtentWithSubclasses.createObjects(GetExtentWithSubclasses.java:86)
> >         at
> > org.apache.jdo.tck.api.persistencemanager.extent.GetExtentWithSubclasses.test(GetExtentWithSubclasses.java:73)
> >         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >         at
> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> >         at
> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> >         at org.apache.jdo.tck.JDO_Test.runBare(JDO_Test.java:237)
> >         at 
> > org.apache.jdo.tck.util.BatchTestRunner.doRun(BatchTestRunner.java:107)
> >         at 
> > org.apache.jdo.tck.util.BatchTestRunner.start(BatchTestRunner.java:147)
> >         at 
> > org.apache.jdo.tck.util.BatchTestRunner.main(BatchTestRunner.java:122)
> > 3)
> > test(org.apache.jdo.tck.api.persistencemanager.lifecycle.MakePersistentAndInstancesNotReachable)javax.jdo.JDODataStoreException:
> > Insert request failed: INSERT INTO applicationidentity0.COMPANIES
> > ("NAME",FOUNDEDDATE,ADDRID,CITY,COUNTRY,"STATE",STREET,ZIPCODE,ID,DISCRIMINATOR)
> > VALUES (?,?,?,?,?,?,?,?,?,?)
> >         at 
> > org.jpox.store.rdbms.request.InsertRequest.execute(InsertRequest.java:393)
> >         at 
> > org.jpox.store.rdbms.table.ClassTable.insert(ClassTable.java:2171)
> >         at org.jpox.store.StoreManager.insert(StoreManager.java:757)
> >         at
> > org.jpox.state.StateManagerImpl.internalMakePersistent(StateManagerImpl.java:3456)
> >         at 
> > org.jpox.state.StateManagerImpl.makePersistent(StateManagerImpl.java:3429)
> >         at
> > org.jpox.AbstractPersistenceManager.internalMakePersistent(AbstractPersistenceManager.java:1150)
> >         at
> > org.jpox.AbstractPersistenceManager.makePersistent(AbstractPersistenceManager.java:1205)
> >         at
> > org.apache.jdo.tck.api.persistencemanager.lifecycle.MakePersistentAndInstancesNotReachable.createObjects(MakePersistentAndInstancesNotReachable.java:85)
> >         at
> > org.apache.jdo.tck.api.persistencemanager.lifecycle.MakePersistentAndInstancesNotReachable.test(MakePersistentAndInstancesNotReachable.java:69)
> >         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >         at
> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> >         at
> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> >         at org.apache.jdo.tck.JDO_Test.runBare(JDO_Test.java:237)
> >         at 
> > org.apache.jdo.tck.util.BatchTestRunner.doRun(BatchTestRunner.java:107)
> >         at 
> > org.apache.jdo.tck.util.BatchTestRunner.start(BatchTestRunner.java:147)
> >         at 
> > org.apache.jdo.tck.util.BatchTestRunner.main(BatchTestRunner.java:122)
> > NestedThrowablesStackTrace:
> > ERROR 23505: The statement was aborted because it would have caused a 
> > duplicate
> > key value in a unique or primary key constraint or unique index identified 
> > by
> > 'COMPS_PK' defined on 'COMPANIES'.
> >         at 
> > org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
> >         at 
> > org.apache.derby.impl.sql.execute.IndexChanger.insertAndCheckDups(Unknown
> > Source)
> >         at org.apache.derby.impl.sql.execute.IndexChanger.doInsert(Unknown 
> > Source)
> >         at org.apache.derby.impl.sql.execute.IndexChanger.insert(Unknown 
> > Source)
> >         at org.apache.derby.impl.sql.execute.IndexSetChanger.insert(Unknown 
> > Source)
> >         at 
> > org.apache.derby.impl.sql.execute.RowChangerImpl.insertRow(Unknown Source)
> >         at 
> > org.apache.derby.impl.sql.execute.InsertResultSet.normalInsertCore(Unknown
> > Source)
> >         at org.apache.derby.impl.sql.execute.InsertResultSet.open(Unknown 
> > Source)
> >         at 
> > org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source)
> >         at 
> > org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source)
> >         at 
> > org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(Unknown
> > Source)
> >         at 
> > org.apache.derby.impl.jdbc.EmbedPreparedStatement.execute(Unknown Source)
> >         at
> > com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.execute(NewProxyPreparedStatement.java:911)
> >         at
> > org.jpox.store.rdbms.ParamLoggingPreparedStatement.execute(ParamLoggingPreparedStatement.java:212)
> >         at 
> > org.jpox.store.rdbms.request.Request.executeUpdate(Request.java:88)
> >         at 
> > org.jpox.store.rdbms.request.InsertRequest.execute(InsertRequest.java:267)
> >         at 
> > org.jpox.store.rdbms.table.ClassTable.insert(ClassTable.java:2171)
> >         at org.jpox.store.StoreManager.insert(StoreManager.java:757)
> >         at
> > org.jpox.state.StateManagerImpl.internalMakePersistent(StateManagerImpl.java:3456)
> >         at 
> > org.jpox.state.StateManagerImpl.makePersistent(StateManagerImpl.java:3429)
> >         at
> > org.jpox.AbstractPersistenceManager.internalMakePersistent(AbstractPersistenceManager.java:1150)
> >         at
> > org.jpox.AbstractPersistenceManager.makePersistent(AbstractPersistenceManager.java:1205)
> >         at
> > org.apache.jdo.tck.api.persistencemanager.lifecycle.MakePersistentAndInstancesNotReachable.createObjects(MakePersistentAndInstancesNotReachable.java:85)
> >         at
> > org.apache.jdo.tck.api.persistencemanager.lifecycle.MakePersistentAndInstancesNotReachable.test(MakePersistentAndInstancesNotReachable.java:69)
> >         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >         at
> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> >         at
> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> >         at org.apache.jdo.tck.JDO_Test.runBare(JDO_Test.java:237)
> >         at 
> > org.apache.jdo.tck.util.BatchTestRunner.doRun(BatchTestRunner.java:107)
> >         at 
> > org.apache.jdo.tck.util.BatchTestRunner.start(BatchTestRunner.java:147)
> >         at 
> > org.apache.jdo.tck.util.BatchTestRunner.main(BatchTestRunner.java:122)
> > FAILURES!!!
> > Error summary:
> > 001 error:  SQL Exception: The statement was aborted because it would have
> > caused a duplicate key value in a unique or primary key constraint or unique
> > index identified by 'EMPS_PK' defined on 'PERSONS'.
> > 002 errors: SQL Exception: The statement was aborted because it would have
> > caused a duplicate key value in a unique or primary key constraint or unique
> > index identified by 'COMPS_PK' defined on 'COMPANIES'.
> > derby-app-pm-junit.txt:
> >     ** Tests run: 099, Time: 032 seconds. Failures: 0, Errors: 3
> > Excluded tests: [org.apache.jdo.tck.enhancement.FieldAccessModified,
> > org.apache.jdo.tck.enhancement.ImplementsPersistenceCapable]
> >   

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to