> I've checked the history of this very code and it seems to originate from
Kodo already... So I am a bit reluctant to touch it ;)
I noticed the same thing...

On Fri, Feb 20, 2015 at 11:35 AM, Mark Struberg <strub...@yahoo.de> wrote:

> My current problem is that we try to use the InverseManager with
> action==Exception (so only check if the bidirectional relations are
> properly set in our code).
>
> The use case is the following
>
> Partner has a 1:n Customer
>
> p1.addCustomer(customer1).
>
> in a later request
>
> p1.removeCustomer(customer1);
>
> and add it to ANOTHER partner
> p2.addCustomer(customer1).
>
> The partnerId in customer1 gets properly updated.
>
> What happens is that the InverseManager invokes
> SingleFieldManager#fetchObjectField(fmd.getIndex()); to get the oldValue of
> the field (and does checks on it).
> And this fetchObjectField call actualle ERASES the internal val in the
> SingleFieldManager.
>
> This makes OpenJPA later blow up as this field is not nullable...
> I've checked the history of this very code and it seems to originate from
> Kodo already...
> So I am a bit reluctant to touch it ;)
>
> LieGrue,
> strub
>
>
> > Am 20.02.2015 um 18:29 schrieb Rick Curtis <curti...@gmail.com>:
> >
> > I don't have an answer as to why we null the reference out. Can I get a
> > stacktrace for a bit of context?
> >
> > On Fri, Feb 20, 2015 at 10:02 AM, Mark Struberg <strub...@yahoo.de>
> wrote:
> >
> >> Does anyone have a clue or remember why the
> >> TransferFieldManager#fetchObjectField sets the val to null after
> returning
> >> it?
> >>
> >>
> >> The reason why I ask is that this currently creates an issue in the
> >> InverseManager for me.
> >>
> >> In InverseManager#storeField line 332 this 'destroys' the field sm as
> the
> >> val of it is null afterwards. And this subsequently creates an
> >> InvalidStateException in SingleFieldManager#preFlush line 567.
> >>
> >>
> >> Does anyone remember something about that?
> >>
> >> LieGrue,
> >> strub
> >
> >
> >
> >
> > --
> > *Rick Curtis*
>
>


-- 
*Rick Curtis*

Reply via email to