[elephant-devel] Re: sqite3 - always increase database size

Aaron Feng aaron.feng at gmail.com
Tue Apr 8 17:49:09 UTC 2008


Hi Alex,

Thanks for responding to my problem, this is exactly what Leslie Polzer has
told me.

Just to clarify, when I remove an object from a btree, it only removes the
reference to the object from the btree.  The actual slot value is kept
separately, in my case, it's the "name" slot.

> no, as far I know, that's because Elephant sucks -- it doesn't have
garbage
> collector.

Will garbage collector be added into elephant in the future?

I'll give drop-pobject or drop-instances a try tonight.

Aaron

On Tue, Apr 8, 2008 at 12:33 PM, Alex Mizrahi <killerstorm at newmail.ru>
wrote:

>  > If theory is correct, executing the loop more than once should cause
> the
> database size to stay relatively the same after the first run.
>  > However, each time I re-execute the loop, the size always increase by a
> good factor.
>  > I do not think it's the transaction log file because of the increment
> amount seemed large.
>  > I also tried to insert and delete directly in the database, this method
> does seem to re-use already allocated pages.
>  >  Am I doing something wrong?
>
> no, as far I know, that's because Elephant sucks -- it doesn't have
> garbage
> collector.
> you remove objects from btree, but Elephant doesn't know if there are no
> references elsewhere, so it just keeps this object.
> note that this happens for objects only because they are stored in special
> way (slots are stored separately) -- there would be no problems with
> strings, numbers or some aggregates of thereof.
>
> if you want this space to be reclaimed, use drop-pobject function -- it
> should erase object's slots. (if object is indexed, use drop-instances --
> then it will also delete it from index.
> (um, weird: can't it be one generic method?)
>
> alternative way is to use migration -- stuff that is not won't be copied.
>
>
>
> _______________________________________________
> elephant-devel site list
> elephant-devel at common-lisp.net
> http://common-lisp.net/mailman/listinfo/elephant-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/elephant-devel/attachments/20080408/a9beafd5/attachment.html>


More information about the elephant-devel mailing list