[ http://issues.apache.org/jira/browse/LUCENE-448?page=all ]

Yonik Seeley updated LUCENE-448:
--------------------------------

    Attachment: omitNorms.txt

> optional norms
> --------------
>
>          Key: LUCENE-448
>          URL: http://issues.apache.org/jira/browse/LUCENE-448
>      Project: Lucene - Java
>         Type: New Feature
>   Components: Index
>     Versions: CVS Nightly - Specify date in submission
>     Reporter: Yonik Seeley
>  Attachments: omitNorms.txt
>
> For applications with many indexed fields, the norms cause memory problems 
> both during indexing and querying.
> This patch makes norms optional on a per-field basis, in the same way that 
> term vectors are optional per-field.
> Overview of changes:
>  - Field.omitNorms that defaults to false
>  - backward compatible lucene file format change: FieldInfos.FieldBits has a 
> bit for omitNorms
>  - IndexReader.hasNorms() method
>  - During merging, if any segment includes norms, then norms are included.
>  - methods to get norms return the equivalent 1.0f array for backward 
> compatibility
> The patch was designed for backward compatibility:
>  - all current unit tests pass w/o any modifications required
>  - compatible with old indexes since the default is omitNorms=false
>  - compatible with older/custom subclasses of IndexReader since a default 
> hasNorms() is provided
>  - compatible with older/custom users of IndexReader such as 
> Weight/Scorer/explain since a norm array is produced on demand, even if norms 
> were not stored
> If this patch is accepted (or if the direction is acceptable), performance 
> for scoring  could be improved by assuming 1.0f when hasNorms(field)==false.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to