Hi,

I'm glad it helped.

OpenJPA is very configurable when it comes to detached objects, and will use
the DetachState setting if you merge an entity back into the persistence
context.

Here's a link to the doc that might be good to read, in addition to the one
I sent earlier:
http://openjpa.apache.org/builds/apache-openjpa-1.2.3-SNAPSHOT/docs/manual/manual.html#ref_guide_detach
.

-mike

On Tue, Feb 8, 2011 at 8:59 PM, 玉米老 <[email protected]> wrote:

> Mike,
> You're right, I set : openjpa.DetachState="all".
> Thank you very much!
>
> Regards,
> Yu Wang
>
> On Tue, Feb 1, 2011 at 10:37 PM, Michael Dick <[email protected]>
> wrote:
> > Hi,
> >
> > Do you have any other openjpa properties set in persistence.xml?
> > Specifically the openjpa.DetachState property can affect which entities
> are
> > loaded when you clear, or manually detach entities.
> >
> > Here's the relevant section of the
> > manual<
> http://openjpa.apache.org/builds/apache-openjpa-1.2.3-SNAPSHOT/docs/manual/manual.html#ref_guide_detach_graph
> >.
> >
> >
> > In your use case you want to use openjpa.DetachState=loaded. Using 'all'
> or
> > 'fetch-groups' may cause other objects to be loaded when an entity is
> > detached.
> >
> > Hope this helps,
> > -mike
> >
> > On Tue, Feb 1, 2011 at 12:45 AM, 玉米老 <[email protected]> wrote:
> >
> >> Hello Rick and Mark,
> >> First of all, I appreciate your quick response very much.
> >>
> >> As your advices, I have opened the OpenJPA trace log and tried to
> >> figure out what did it really do when clear() method of Entity Manager
> >> was invoked.
> >>
> >> Please let me introduce my scenario first.
> >> I have two table one is master and another is slave.The slave entity
> >> list is LAZY loaded.
> >> My case is every time I try to get a list of master table entity,
> >> clear() method of Entity Manager will be invoked first to make sure
> >> latest entities will be retrieved. In addition, slave entities seldom
> >> be loaded in my scenario.
> >>
> >> But from trace log I found clear() method always try to load all slave
> >> entities and then detach all master and slave entities. I guest that's
> >> the exact root cause why clear() method is so slow.
> >>
> >> And I found upgrading to 1.2.2 and adding below line into
> >> persistence.xml doesn't really make any improvements.
> >>                         <property name="openjpa.Compatibility"
> >> value="ReloadOnDetach=false, FlushBeforeDetach=false"/>
> >>
> >> Any suggestions?
> >>
> >> Regards,
> >> Yu Wang
> >>
> >> On Tue, Feb 1, 2011 at 12:15 AM, Rick Curtis <[email protected]>
> wrote:
> >> > Yu -
> >> >
> >> > When you call em.clear(), any idea on how many Entities are in your
> >> > persistence context? Could you provide some sort of pseudo code as to
> the
> >> > scenario that you are running?
> >> >
> >> > Thanks,
> >> > Rick
> >> > On Mon, Jan 31, 2011 at 4:16 AM, 玉米老 <[email protected]> wrote:
> >> >
> >> >> Hello,
> >> >> I upgraded into 1.2.2 and added below line into persistence.xml but
> it
> >> >> doesn't really work. In fact I found clere() is still time consuming.
> >> >> Any suggestions?
> >> >>  <property name="openjpa.Compatibility"
> >> >>                            value="ReloadOnDetach=false,
> >> >> FlushBeforeDetach=false"/>
> >> >>
> >> >> Regards,
> >> >> Yu Wang
> >> >>
> >> >> On Mon, Jan 31, 2011 at 2:53 PM, 玉米老 <[email protected]> wrote:
> >> >> > I guess this may be relevant:
> >> >> >
> >> >> > https://issues.apache.org/jira/browse/OPENJPA-1414
> >> >> >
> >> >> > On Mon, Jan 31, 2011 at 1:32 PM, 玉米老 <[email protected]> wrote:
> >> >> >> sorry, I'm using OpenJPA 1.2.1 not 2.1
> >> >> >>
> >> >> >> On Mon, Jan 31, 2011 at 1:26 PM, 玉米老 <[email protected]> wrote:
> >> >> >>> Hello experts:
> >> >> >>> I found sometimes invoking clear() method of entity manager will
> >> took
> >> >> >>> more than 30 seconds.
> >> >> >>> I don't know if there' re some performance issues or I shouldn't
> >> >> >>> invoke clear() method first to get updated objects?
> >> >> >>>
> >> >> >>> Regards,
> >> >> >>> Yu Wang
> >> >> >>>
> >> >> >>
> >> >> >
> >> >>
> >> >
> >>
> >
>

Reply via email to