Re: AUTO_PK_SUPPORT, mysql and join tables

From: John Armstrong (siberia..mail.com)
Date: Sun Mar 28 2010 - 11:56:37 EDT

  • Next message: Andrus Adamchik: "Re: AUTO_PK_SUPPORT, mysql and join tables"

    Hi Andrus,
       I downgraded to 3.0M6 from RC2 a few weeks ago to troubleshoot some
    problems. I tested this in both M6 and RC2 with the same results.

      I have a few other join tables that are similar and exhibit the same
    behavior.
    Tx!
    J

      Tthe flattened relationship is defined as :

    <db-relationship name="userprojectsArray" source="PROJECT"
    target="USERPROJECTS" toMany="true">
    <db-attribute-pair source="ID" target="PROJECT"/>
    </db-relationship>

    <db-relationship name="userprojectsArray" source="USER"
    target="USERPROJECTS" toMany="true">
    <db-attribute-pair source="ID" target="PGUSER"/>
    </db-relationship>

    <db-relationship name="toProject" source="USERPROJECTS" target="PROJECT"
    toMany="false">
    <db-attribute-pair source="PROJECT" target="ID"/>
    </db-relationship>
    <db-relationship name="toUser" source="USERPROJECTS" target="USER"
    toMany="false">
    <db-attribute-pair source="PGUSER" target="ID"/>

    On Sun, Mar 28, 2010 at 7:36 AM, Andrus Adamchik <andru..bjectstyle.org>wrote:

    > Odd. Join table with its own (non-propagated) PK should work the same as
    > any other table. Which vesrion of Cayenne is this and are you using
    > flattened relationships across the join table?
    >
    > Andrus
    >
    >
    > On Mar 28, 2010, at 9:43 AM, John Armstrong wrote:
    >
    > Hi all,
    >> I am using mysql with all database generated pks and auto_increment.
    >>
    >> This works fine for all tables except join tables. When accessing a join
    >> table cayenne tries to access the AUTO_PK_TABLE rather then relying on the
    >> auto_increment.
    >>
    >> My join tables are configured identically :
    >>
    >> <db-entity name="USERPROJECTS" catalog="pgi">
    >> <db-attribute name="CREATIONDATE" type="TIMESTAMP" length="19"/>
    >> <db-attribute name="ID" type="INTEGER" isPrimaryKey="true"
    >> isGenerated="true" isMandatory="true" length="10"/>
    >> <db-attribute name="PGUSER" type="INTEGER" length="10"/>
    >> <db-attribute name="PROJECT" type="INTEGER" length="10"/>
    >> </db-entity>
    >> <obj-entity name="Userprojects" className="com.pgi.common.Userprojects"
    >> dbEntityName="USERPROJECTS">
    >> <obj-attribute name="creationdate" type="java.util.Date"
    >> db-attribute-path="CREATIONDATE"/>
    >> <obj-attribute name="id" type="java.lang.Integer" db-attribute-path="ID"/>
    >> </obj-entity>
    >>
    >> Any ideas?
    >>
    >> John-
    >>
    >
    >



    This archive was generated by hypermail 2.0.0 : Sun Mar 28 2010 - 11:57:17 EDT