Uploaded image for project: 'JDO'
  1. JDO
  2. JDO-375

Company model tables are not fully cleaned up

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • JDO 2 rc1
    • JDO 2 final (2.0)
    • tck
    • None

    Description

      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]
      >

      Attachments

        1. JDO-375.patch
          2 kB
          Michael Bouschen
        2. JDO-375-2.patch
          2 kB
          Michael Bouschen
        3. JDO-375-fknames.patch
          5 kB
          Craig L Russell
        4. jpox-enhancer-SNAPSHOT.jar
          167 kB
          Andy Jefferson
        5. jpox-SNAPSHOT.jar
          1.65 MB
          Andy Jefferson

        Activity

          People

            ebengtso Erik Bengtson
            ebengtso Erik Bengtson
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: