[elephant-devel] Migration and garbage collection

Ian Eslick eslick at media.mit.edu
Sat Mar 22 04:11:51 UTC 2008


In the past, we've been able to reclaim instances that were not  
reachable from the root or in an indexed object.  However, with the  
new schema model, all persistent objects are reachable implicitly by  
being in the store's oid->class table (i.e. a get-instances-by-class  
now works for any persistent class).  Thus to reclaim storage you have  
to explicitly drop an instance.

Is this good or bad?  It's nice to always be able to reach instances  
of a class, but for reclamation we could have a class option which is  
something like :weak-class-index t.  That is instances may be  
reachable by get-instances-by-class but it's not guaranteed after a gc  
or migration.

Anyone have thoughts on this?  How should we define reachability in  
this new model?

Thanks,
Ian



More information about the elephant-devel mailing list