Re: Bug in auto-DC registration?

From: Andrus Adamchik (andru..bjectstyle.org)
Date: Tue May 02 2006 - 20:23:31 EDT

  • Next message: Kevin Menard: "Re: Bug in auto-DC registration?"

    Kevin,

    could you please check in a unit test that shows this problem - I'll
    take a look.

    Andrus

    On May 2, 2006, at 8:17 PM, Kevin Menard wrote:

    > Andrus, you'd probably be the best guy to answer this, but I'm
    > going to throw it out there in general. For reasons lost to me
    > now, with the old milestones, I'd have code like the following:
    >
    > final Blah b = (Blah) dc.createAndRegister(Blah.class);
    >
    > // Somewhere else.
    > dc.unregisterObjects(Collections.singletonList(b));
    >
    > // Somewhere else.
    > b.setSomeRelation(yo);
    >
    >
    > yo is registered with the DC, so setting the relationship should
    > register b with the DC as well. I suspect I had the unregister
    > call because at one point there were problems with registering a DO
    > twice with the same DC.
    >
    > Anyway, the above causes an exception. I've spent the better part
    > of the day tracking it down. It appears that when the insert
    > occurs, the ID recorded for yo is null (so, the exception is a not-
    > null constraint violation). Remove the unregisterObjects() call
    > and everything works dandy. The problem seems to be the first time
    > through all the ObjectDiffs get created fine. The second time
    > through, however, there is no ArcOperation created for the
    > relationship.
    >
    > So, is this a bug in how I'm doing things or in how Cayenne is? At
    > this point, I'm going to remove the unregisterObjects() call, but
    > it seems to me that if setting relationships will auto-register, it
    > should set everything up identically.
    >
    > Thanks,
    > Kevin
    >



    This archive was generated by hypermail 2.0.0 : Tue May 02 2006 - 20:23:58 EDT