• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: EO Caching
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: EO Caching


  • Subject: Re: EO Caching
  • From: Jeffrey Simpson <email@hidden>
  • Date: Mon, 10 Dec 2007 10:02:24 -0500
  • Thread-topic: EO Caching

Thanks for the input.

I have decided that this whole course is wrong.  We have some performance
problems and my boss wanted to see if there was a magic bullet.  Loading the
whole database into memory at startup was not the way to go.

I think we need to go to raw rows for display only screens and only make EO
objects when we are going to edit.  I think this is the recommended way to
go.


On 12/8/07 7:13 AM, "Alexander Spohr" <email@hidden> wrote:

>
> Am 07.12.2007 um 22:56 schrieb Jeffrey Simpson:
>
>> Thanks for the prompt reply.  I forgot to mention we have our own
>> batch
>> fetching that does a objectByPrimary key with a delegate that does
>> not do a
>> database fetch to weed out the object in memory.
>
> Why and what for? EOF does this already well.
> If you need a cache, give it an EC and some NSArrays to store the
> objects. Use EOUtilities.localInstance to migrate objects into your
> working-EC¹s if you need to make connections.
>
>
>> I discovered that by having the ecs use strong references it did
>> what I
>> wanted.  I also found out that is took to long to start an instance.
>
> Same question as Chuck¹s: What amount are you loading in what kind of
> way?
>
>
>> In our system each session has a default editing context that we
>> only use
>> for querying.  Any thoughts on every session sharing the same
>> default ec?
>> This way the cache would slowly build.
>
> No, don¹t do this! Sessions should not interfere with each others data
> - not even for reads.
>
>
>> I think the real answer is for us to slowly rewrite our application
>> to use
>> more raw rows.
>
> Sorry for being rude, but either you did not understand EOF¹s
> mechanics, or EOF is the wrong choice for your app. Raw rows is only
> for mass-data, not for something to be cached and used by the object-
> graph.
>
> I really think you have some speed problems at other places. I put my
> bets on loops that fire faults... Watch your EOAdaptorDebug output.
>
> atze
>
>
>
>> On 12/7/07 1:41 PM, "Chuck Hill" <email@hidden> wrote:
>>
>>>
>>> On Dec 7, 2007, at 7:01 AM, Jeffrey Simpson wrote:
>>>
>>>> I want to preload some EOs and so they are cached.  I have set
>>>> ERXEC.setDefaultFetchTimestampLag(86400000);
>>>
>>> That only applies to faulting, not fetching.  You might want to look
>>> at the much feared EOSharedEditingContext or at Wonder's EO caching
>>> classes (there are three or so, IIRC).  Also look at the "Cache in
>>> memory" setting in EOModeler.
>>>
>>>
>>>> I preload my EOs and do some
>>>> batch fetching. Later on I use a fetch spec to query from the
>>>> database some
>>>> of the cached EOs. They are fully fetched which I understand is the
>>>> case.
>>>> When I then batch fetch these EOs the system always runs fetches.
>>>
>>> It is not clear to me what code you are using here.  I will note that
>>> all fetches (ec.objectsWithFetchSpecification) go to the database,
>>> even if the fetched data is then discarded.  Batch fetching is a
>>> fetch.
>>>
>>>
>>>> The time
>>>> between this fetch and the preloading is < 5 minutes.  If I run the
>>>> same
>>>> query in a the same ec then the EOs are cached.  Any idea of why
>>>> there is no
>>>> caching between the 2 ecs?
>>>
>>> No, not without a clearer understanding of your code.
>>>
>>> Chuck
>>
>>
>> Jeffrey Simpson
>> Youth For Understanding USA
>> email@hidden
>> Telephone: (240) 235-2114
>> FAX: (202) 235-2104
>>
>> Preparing young people for their responsibilities and opportunities
>> in a
>> changing, interdependent world.
>>
>>
>>
>>
>>
>> _______________________________________________
>> Do not post admin requests to the list. They will be ignored.
>> Webobjects-dev mailing list      (email@hidden)
>> Help/Unsubscribe/Update your Subscription:
>>
>> This email sent to email@hidden
>
> Freeport & Soliversum
> Alexander Spohr
> email@hidden
> www.freeport.de
>
>


Jeffrey Simpson
Youth For Understanding USA
email@hidden
Telephone: (240) 235-2114
FAX: (202) 235-2104

Preparing young people for their responsibilities and opportunities in a
changing, interdependent world.





 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden

  • Follow-Ups:
    • Re: EO Caching
      • From: Mike Schrag <email@hidden>
References: 
 >Re: EO Caching (From: Alexander Spohr <email@hidden>)

  • Prev by Date: New NSPropertyListSerialization in 5.4
  • Next by Date: Re: EO Caching
  • Previous by thread: Re: EO Caching
  • Next by thread: Re: EO Caching
  • Index(es):
    • Date
    • Thread