[Mulgara-general] Swap space exhaustion in 2.1.4

Paul Gearon gearon at ieee.org
Mon Jan 25 20:44:26 UTC 2010


Hi Benjamin,

I saw this last night, sorry I haven't had time to reply before now.

Thanks for the patch. It sounds promising. I just need a little time
to look at it, but I should be able to put it in soon.

Regards,
Paul Gearon

On Fri, Jan 22, 2010 at 4:41 PM, Benjamin Armintor <armintor at gmail.com> wrote:
> Hello Mulgara folks,
>
> Recently I noticed some queries against Mulgara 2.1.4 with fairly
> large result sets against (probably more significantly) predicates
> with many objects (dateTime stamps) were failing for lack of memory.
> I put together an hprof harness for the queries to try and diagnose
> the problem, and it failed (although with some hints).  I think the
> issue was the creation of many, many Block objects backed by direct
> byte buffers in BlockCacheLine.find().  The directly allocated buffers
> there weren't cleaned up with a Cleaner, and I think the recursive
> calls might also inhibit their beng gc'd.
>
> I rebuilt Mulgara with HeapByteBuffer-backed Blocks, and added a
> method for re-using Blocks in a BlockFile to cut down on the creation.
>  This appears to have fixed the problem, and hprof is showiing a
> fairly significant reduction in memory usage for the queries I
> mentioned.
>
> I'm attaching a patch, recognizing that it's out of date.  If it's
> interesting to the developers, I'll try to port the changes to the
> 2.1.7 branch.
>
> regards,
>  Benjamin Armintor
>
> _______________________________________________
> Mulgara-general mailing list
> Mulgara-general at mulgara.org
> http://mulgara.org/mailman/listinfo/mulgara-general
>
>



More information about the Mulgara-general mailing list