[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