[ 
http://issues.apache.org/jira/browse/JDO-215?page=comments#action_12357945 ] 

Craig Russell commented on JDO-215:
-----------------------------------

The patch seems right. What the JDO implementation has to do is to recognize 
that the primary key (if needed) for the join table must be a composite key 
consisting of the key referencing the owning table and id column from the 
mapped key. For example,

 CREATE TABLE SET_OF_OBJECT0
 (
     IDENTIFIER INTEGER REFERENCES SET_COLLECTIONS NOT NULL,
     OBJREF BIGINT REFERENCES SIMPLE_CLASS NOT NULL
 );

The primary key for this table (if it is needed by the implementation -- let's 
discuss this) would be IDENTIFIER plus OBJREF.

 CREATE TABLE SET_OF_OBJECT1
 (
     IDENTIFIER INTEGER REFERENCES SET_COLLECTIONS NOT NULL,
     ID BIGINT NOT NULL,
     INTVAL INTEGER NOT NULL,
     STRINGVAL VARCHAR(128) NOT NULL
);

The primary key for this table would be IDENTIFIER plus ID.


> Remove <order> from mapping for HashSetCollections and SetCollections.
> ----------------------------------------------------------------------
>
>          Key: JDO-215
>          URL: http://issues.apache.org/jira/browse/JDO-215
>      Project: JDO
>         Type: Bug
>   Components: tck20
>     Reporter: Craig Russell
>     Assignee: Michelle Caisse
>  Attachments: JDO-215.patch
>
> The mapping for HashSetCollections and SetCollections incorrectly have 
> <order> columns. 
> There should not be an ordering specified for the join table since duplicates 
> are not allowed. The mapping for application identity should not need a 
> primary key, since the JDO implementation should be able to figure out that 
> the primary key is part of the Map.key, but the datastore identity mapping 
> does need a primary key (and again, I'd use the id field of SimpleClass as 
> the join table key column.

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