On 5/15/07, Gokhan Ergul <[EMAIL PROTECTED]> wrote:

rejects the patch, my plan is to sleep on it ;). I hope to get back to
the issue when I have some time on my hands and possibly test Reece's
SQL reordering patch
(https://issues.apache.org/jira/browse/OPENJPA-235), which looks rather
promising on that testcase as well.


Yes. Provided one follows Reece's example and annotates the field 'parent'
in B.java and C.java
with @ForeignKey

The problem for updateDetached persists despite Reece's changes though.

For updateDetached (EntityManager em), I was able to get it to 'work' by
> allowing cascading from C to B on the @ManyToOne
That's something I'd avoid tbh, though it may fix the problem, it
doesn't really make sense to cascade from dependent objects to container
objects unless you have a good reason to do so.


I agree. I figured it might still serve as an indication of why the problem
reported arises.


> On MySQL, updateDetached works fine with the modification:
> @ManyToOne(cascade=CascadeType.ALL)
I'm assuming you're running without the patch I've included in the
testcase? With the patch it should work without messing around with
@ManyToOne.
>


The thing with the patch is.. Is it a fix or a work-around that could now
potentially be allowing cases
that the initial implementation was meant to prevent?
It looks like the exception is being thrown because B is not detached,
indeed, it is new.
Yet, there is a cached version of it.

The question is.. Why does OpenJPA expect, even force, the users to allocate
for cascading from child
to parent regardless of whether they mean to or not?

Is this something that can be improved, for which a fix would be welcome?

J-Philippe.

Reply via email to