incubator-blur-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aaron McCurry (JIRA)" <>
Subject [jira] [Created] (BLUR-370) Memory leak when using facets in 0.2.3
Date Fri, 29 Aug 2014 19:01:53 GMT
Aaron McCurry created BLUR-370:

             Summary: Memory leak when using facets in 0.2.3
                 Key: BLUR-370
             Project: Apache Blur
          Issue Type: Bug
          Components: Blur
    Affects Versions: 0.2.3
            Reporter: Aaron McCurry
            Assignee: Aaron McCurry
            Priority: Blocker
             Fix For: 0.2.4

Code in a new class DeepPaging that keeps up with IndexReader generations and pointers to
previous search positions to allow for faster paging through results was enabled in 0.2.3.
 This code used the Lucene Query objects themselves as keys in the lru cache.  This means
the FacetQuery is also placed into the lru cache.  The FacetQuery holds a reference the FacetExecutor
which holds references to the BitSets that are built up during the facet execution.

Long story short if facets are used, up to 1000 BitSets per shard per table can be held on
the heap and this can cause OOM errors.

As a work around on 0.2.3 you can set blur.shard.deep.paging.cache.size=1 in the
file.  Do not set it to 0, this will cause another issue where NO cache values are ever released.

This message was sent by Atlassian JIRA

View raw message