db-jdo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michelle Caisse (JIRA)" <j...@apache.org>
Subject [jira] Commented: (JDO-143) ERROR 23503: INSERT on table 'COLLECTION_OF_SIMPLE_CLASS3' caused a violation of foreign key constraint
Date Mon, 26 Sep 2005 23:19:47 GMT
    [ http://issues.apache.org/jira/browse/JDO-143?page=comments#action_12330525 ] 

Michelle Caisse commented on JDO-143:
-------------------------------------

Currently values for Collections of Collection types are obtained as a Vector with one  value
for each different datatype represented in the fields of  the class.  Each field of the same
data type is assigned the same instance from this Vector.  org.apache.jdo.tck.models.fieldtypes.FirstSetOfTestValuesForCollection.java
and ...SecondSetOfTestValuesForCollection.java each contain  a vector field for each data
type.

I propose removing these two classes from the repository, adding a static method to org.apache.jdo.tck.models.fieldtypes.TestUtil.java
that takes the field data type and an integer specifying whether this is the first or second
value as arguments, and returns a new Vector of new object instances on each invocation. 
TestCollectionCollections.java must also be modified to use the static method to get test
values.  Its checkValues() method must be modified to use a CollectionCollection type as the
standard rather than using a FirstSetOfTestValuesForCollection or SecondSetOfTestValuesForCollection
type as the standard.

If we decide to go ahead with this change, all the other Test*Collection.java files will have
to be changed as described.  I would also address issues JDO-145 and JDO151- in the same checkin,
because they involve the same set of files.


> ERROR 23503: INSERT on table 'COLLECTION_OF_SIMPLE_CLASS3' caused a violation of foreign
key constraint
> -------------------------------------------------------------------------------------------------------
>
>          Key: JDO-143
>          URL: http://issues.apache.org/jira/browse/JDO-143
>      Project: JDO
>         Type: Bug
>   Components: tck20
>     Reporter: Michelle Caisse
>     Assignee: Michelle Caisse

>
>     [java] 1) test(org.apache.jdo.tck.models.fieldtypes.TestCollectionCollections)javax.jdo.JDODataStoreException:
Add request failed : INSERT INTO applicationidentity0.COLLECTION_OF_SIMPLE_CLASS3 (IDENTIFIER,ALLOW_DUPLICATES,SIMPCLSREF)
VALUES (?,?,?)
>     [java]      at org.jpox.store.rdbms.scostore.NormalSetStore.add(NormalSetStore.java:672)
>     [java]      at org.jpox.sco.SCOUtils.updateStoreWithCollection(SCOUtils.java:489)
>     [java]      at org.jpox.store.mapping.container.CollectionMapping.postUpdate(CollectionMapping.java:279)
>     [java]      at org.jpox.store.rdbms.request.UpdateRequest.execute(UpdateRequest.java:266)
>     [java]      at org.jpox.store.rdbms.table.ClassTable.update(ClassTable.java:1838)
>     [java]      at org.jpox.store.StoreManager.update(StoreManager.java:782)
>     [java]      at org.jpox.state.StateManagerImpl.flush(StateManagerImpl.java:4298)
>     [java]      at org.jpox.state.StateManagerImpl.runReachability(StateManagerImpl.java:3102)
>     [java]      at org.jpox.AbstractPersistenceManager.preCommit(AbstractPersistenceManager.java:3049)
>     [java]      at org.jpox.NonmanagedTransaction.commit(NonmanagedTransaction.java:419)
>     [java]      at org.apache.jdo.tck.models.fieldtypes.TestCollectionCollections.runTest(TestCollectionCollections.java:97)
>     [java]      at org.apache.jdo.tck.models.fieldtypes.TestCollectionCollections.test(TestCollectionCollections.java:69)
>     [java]      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>     [java]      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>     [java]      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>     [java]      at org.apache.jdo.tck.JDO_Test.runBare(JDO_Test.java:204)
>     [java]      at org.apache.jdo.tck.util.BatchTestRunner.start(BatchTestRunner.java:115)
>     [java]      at org.apache.jdo.tck.util.BatchTestRunner.main(BatchTestRunner.java:93)
>     [java] NestedThrowablesStackTrace:
>     [java] ERROR 23503: INSERT on table 'COLLECTION_OF_SIMPLE_CLASS3' caused a violation
of foreign key constraint SQL050921005031671' for key (1127341751473).  The statement has
been rolled back.
>     [java]      at org.apache.derby.iapi.error.StandardException.newException(Unknown
Source)
>     [java]      at org.apache.derby.impl.sql.execute.ForeignKeyRIChecker.doCheck(Unknown
Source)
>     [java]      at org.apache.derby.impl.sql.execute.GenericRIChecker.doCheck(Unknown
Source)
>     [java]      at org.apache.derby.impl.sql.execute.RISetChecker.doFKCheck(Unknown Source)
>     [java]      at org.apache.derby.impl.sql.execute.InsertResultSet.normalInsertCore(Unknown
Source)
>     [java]      at org.apache.derby.impl.sql.execute.InsertResultSet.open(Unknown Source)
>     [java]      at org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown
Source)
>     [java]      at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown
Source)
>     [java]      at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(Unknown
Source)
>     [java]      at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeUpdate(Unknown
Source)
>     [java]      at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeUpdate(NewProxyPreparedStatement.java:105)
>     [java]      at org.jpox.store.rdbms.scostore.BaseContainerStore.executeUpdate(BaseContainerStore.java:97)
>     [java]      at org.jpox.store.rdbms.scostore.NormalSetStore.add(NormalSetStore.java:654)
>     [java]      at org.jpox.sco.SCOUtils.updateStoreWithCollection(SCOUtils.java:489)
>     [java]      at org.jpox.store.mapping.container.CollectionMapping.postUpdate(CollectionMapping.java:279)
>     [java]      at org.jpox.store.rdbms.request.UpdateRequest.execute(UpdateRequest.java:266)
>     [java]      at org.jpox.store.rdbms.table.ClassTable.update(ClassTable.java:1838)
>     [java]      at org.jpox.store.StoreManager.update(StoreManager.java:782)
>     [java]      at org.jpox.state.StateManagerImpl.flush(StateManagerImpl.java:4298)
>     [java]      at org.jpox.state.StateManagerImpl.runReachability(StateManagerImpl.java:3102)
>     [java]      at org.jpox.AbstractPersistenceManager.preCommit(AbstractPersistenceManager.java:3049)
>     [java]      at org.jpox.NonmanagedTransaction.commit(NonmanagedTransaction.java:419)
>     [java]      at org.apache.jdo.tck.models.fieldtypes.TestCollectionCollections.runTest(TestCollectionCollections.java:97)
>     [java]      at org.apache.jdo.tck.models.fieldtypes.TestCollectionCollections.test(TestCollectionCollections.java:69)
>     [java]      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>     [java]      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>     [java]      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>     [java]      at org.apache.jdo.tck.JDO_Test.runBare(JDO_Test.java:204)
>     [java]      at org.apache.jdo.tck.util.BatchTestRunner.start(BatchTestRunner.java:115)
>     [java]      at org.apache.jdo.tck.util.BatchTestRunner.main(BatchTestRunner.java:93)
> Possibly due to a misordering of inserts required for this operation?

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


Mime
View raw message