Apache JDO Project - huge volumes and flush

This is Interesting: Free IT Magazines  
Home > Archive > Apache JDO Project > May 2006 > huge volumes and flush





You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

Author huge volumes and flush
Erik Bengtson

2006-05-24, 1:11 pm



Hi,

In case of huge amount of objects loaded /persisted, the flush method is for
this purpose. I wonder how the cache/state management can be implemented
without breaking JDO contract and capable to handle load, any tips?

Thanks

Erik Bengtson

Craig L Russell

2006-05-24, 7:11 pm

Erik Bengtson

2006-05-29, 4:56 pm

Thanks Craig,

I works now.

Quoting Craig L Russell <Craig.Russell@Sun.COM>:

> Hi Erik,
>
> Generally, use weak references to persistent instances so they can be
> garbage collected when the user no longer holds a strong reference to
> them. Unflushed dirty instances need to be referenced strongly so
> they are not garbage collected. So at flush time, move the flushed
> dirty instances from a strong-reference map to a weak-reference map
> (key = oid, value = weak-reference object).
>
> Craig
>
> On May 24, 2006, at 7:21 AM, Erik Bengtson wrote:
>
>
> Craig Russell
> Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
> 408 276-5638 mailto:Craig.Russell@sun.com
> P.S. A good JDO? O, Gasp!
>
>





Michael Bouschen

2006-05-29, 4:56 pm

Hi Erik,

most probably you know already: class WeakHashMap from java.util does
not help when implementing the map of flushed instances. The WeakHashMap
uses a WeakReference for the key, but it strongly references the value
which is the flushed instance in your case. You need a map
implementation that maintains a strong reference to the key, but a weak
reference to the value. Just in case you are interested: there is a
tested implementation in the core20 module of the apache jdo repository.
The class is called WeakValueHashMap and you find it under
core20/src/java/org/apache/jdo/util.

Regards Michael
> Thanks Craig,
>
> I works now.
>
> Quoting Craig L Russell <Craig.Russell@Sun.COM>:
>
>
>
>
>



--
Michael Bouschen Tech@Spree Engineering GmbH
mailto:mbo.tech@spree.de http://www.tech.spree.de/
Tel.:++49/30/235 520-33 Buelowstr. 66
Fax.:++49/30/2175 2012 D-10783 Berlin


Sponsored Links






Free braindumps | Software forum | Database administration forum

Copyright 2003 - 2008 webservertalk.com