You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ojb-user@db.apache.org by Gerhard Grosse <ge...@lex-com.net> on 2004/09/07 14:40:48 UTC

Re: Massive concurrency problems under high server load

On Fri, 20 Aug 2004 16:30:27 -0400, Jason Mihalick
<ja...@jCraftsmen.com> wrote:

>Gerhard,
>
>Which object cache are you using?  ObjectCacheDefaultImpl or 
>ObjectCachePerBrokerImpl?  As the doc states, the ObjectCacheDefaultImpl 
>does have some drawbacks pertaining to dirty reads.  We use OJB in 
>servlet environment with an extremely query intensive application, but 
>it's a very low load.
>
>We recently upgraded from RC4 to 1.0 and so far haven't seen any new 
>problems that were due to changes between the versions. 

Hi Jason,

we are using our own cache implementation which is roughly equivalent
to ObjectCachePerBroker. In theory this should be the safest choice,
but your idea was right: there was a problem with the cache: For some
reason (this might have been fixed in 1.0) OJB occassionally uses a
second PersistenceBroker instance within a single ODMG transaction and
hence had two different copies of the same persistent object in its
two caches, which caused some optimistic lock exceptions. We are now
using something like a ObjectCachePerThreadImpl and this problem seems
to be gone.

Thanks for the tip!

Gerhard


---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-user-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-user-help@db.apache.org