This is bound to be a stupid/silly question, but why do the caches need
to be static?  Static data is effectively global, i.e. a GC root in and
of itself, and thus will never be collected.  Even with a good policy,
it's possible that this could use more memory than people would expect.

See also:
    http://blogs.msdn.com/oldnewthing/archive/2006/05/02/588350.aspx
    http://blogs.msdn.com/ricom/archive/2004/01/19/60280.aspx

Is there really a need for a cache that's static (i.e. shared amongst
all DataContext instances)?  Or can it just be non-static and attached
to the DataContext (which would also remove all thread safety
requirements).

Put another way, with non-shared caches if the DataContext gets
collected then the cache is also collected, thus providing a natural
mechanism to clear the cache.  With shared (static) caches, they're not
connected to the DataContext, and thus it could be holding cached data
for a DataContext that no longer exists.  (This may not be the case
anyway; I haven't fully read and understood the code.  I'm just trying
to make clear that preferring shared caches isn't an open and shut easy
decision.)

Thanks,
 - Jon

On Thu, 2009-05-14 at 16:55 +0200, Giacomo Tesio wrote:
> I've two need:
> 
> - Thread Safety of static caches: should be done for QueryCache, but
> Jon have encountered a strange (unreproduced on tests) bug while
> working on NerdDinner. If no other static cache exists they are ok.
> 
> 
> 
> - XmlMappingSource working correctly: now, associations are not loaded
> from external mappings. This fix require IDataMapper and DataMapper
> modifications and DataContext fixes.
> 
> 
> The first is absolutelly needed (but should yet work right, just
> missing true multithread test on multi core machines).
> The second I think is really important, but require a bit of work.
> 
> 
> 
> Giacomo
> 
> 
> 
> 
> 
> On Thu, May 14, 2009 at 4:28 PM, Sharique <[email protected]> wrote:
> 
>         
>         Hi,
>         It has been almost 1 year since last release, I think it is
>         time make
>         a new release (guess 0.19) . If there is any blocking issue,
>         pls put
>         it here for discussion. So that we can resolve it quickly.
>         
>         --
>         Sharique
>         
> 
> 
> 
> > 

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"DbLinq" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/dblinq?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to