You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Michael McCandless (JIRA)" <ji...@apache.org> on 2007/10/06 15:33:50 UTC

[jira] Created: (LUCENE-1023) When the index has more than 1 segment, norms take 2 bytes of RAM per norm not 1

When the index has more than 1 segment, norms take 2 bytes of RAM per norm not 1
--------------------------------------------------------------------------------

                 Key: LUCENE-1023
                 URL: https://issues.apache.org/jira/browse/LUCENE-1023
             Project: Lucene - Java
          Issue Type: Bug
          Components: Index
    Affects Versions: 2.2, 2.1, 2.0.0, 1.9, 2.0.1, 2.3
            Reporter: Michael McCandless
            Assignee: Michael McCandless
            Priority: Minor


When norms are loaded for an index with multiple segments,
MultiSegmentReader caches a byte array for all norms (concatenated
from all segments), and SegmentReader also caches a byte array for its
norms.  I think MultiSegmentReader should somehow tell SegmentReader
not cache its own norms.  For a large index this will save quite a bit
of memory (1 byte per document per field-with-norms).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-dev-help@lucene.apache.org


[jira] Resolved: (LUCENE-1023) When the index has more than 1 segment, norms take 2 bytes of RAM per norm not 1

Posted by "Michael McCandless (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/LUCENE-1023?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Michael McCandless resolved LUCENE-1023.
----------------------------------------

    Resolution: Invalid

Woops ... I was mistaken here.  MultiSegmentReader calls this method on each SegmentReader:

    norms(String field, byte[] result, int offset)

and that method does not populate the cache inside SegmentReader (though it will use it if it's already populated).  MultiReader does the same thing too.

So this is not an issue.

> When the index has more than 1 segment, norms take 2 bytes of RAM per norm not 1
> --------------------------------------------------------------------------------
>
>                 Key: LUCENE-1023
>                 URL: https://issues.apache.org/jira/browse/LUCENE-1023
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>    Affects Versions: 1.9, 2.0.0, 2.0.1, 2.1, 2.2, 2.3
>            Reporter: Michael McCandless
>            Assignee: Michael McCandless
>            Priority: Minor
>
> When norms are loaded for an index with multiple segments,
> MultiSegmentReader caches a byte array for all norms (concatenated
> from all segments), and SegmentReader also caches a byte array for its
> norms.  I think MultiSegmentReader should somehow tell SegmentReader
> not cache its own norms.  For a large index this will save quite a bit
> of memory (1 byte per document per field-with-norms).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-dev-help@lucene.apache.org