[ 
https://issues.apache.org/jira/browse/LUCENE-4315?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Uwe Schindler resolved LUCENE-4315.
-----------------------------------

    Resolution: Fixed

Committed trunk revision: 1375522
Committed 4.x revision: 1375530

I'll open a new issue to rethink Fields.size() returning -1
                
> Minor fixes for Fields abstract class, TermVectorsWriter
> --------------------------------------------------------
>
>                 Key: LUCENE-4315
>                 URL: https://issues.apache.org/jira/browse/LUCENE-4315
>             Project: Lucene - Core
>          Issue Type: Bug
>          Components: core/index
>    Affects Versions: 4.0-BETA
>            Reporter: Uwe Schindler
>            Assignee: Uwe Schindler
>             Fix For: 5.0, 4.0
>
>         Attachments: LUCENE-4315.patch, LUCENE-4315.patch
>
>
> The Fields abstract class is a little bit inconsistent. It does not allow 
> iterator() to throw IOException, but size() is allowed to do this. This is 
> inconsistent, as looping through iterator always returns size without 
> IOException.
> Also Fields.size() allows -1 as return value, but almost all implementation 
> (only MultiFields and FieldFilteredAtomicReader actually return -1) implement 
> it in a very cheap way. This is simple statistics, we should rethink this:
> - TermVectorsWriter's basic merging (without optimization requires this 
> information, also requires Terms.size())
> - We can default Fields.size() to count iterator (instead of abstract), if 
> not explicitely implemented. This method is called only by tools like Luke 
> (introspection) and TermVectors merging.
> We should maybe enforce size() for Fields to return a value >=0 (Preflex also 
> knows its size!), and if the impl class does not have it (MultiFields, 
> FieldFilteredAtomicReader), loop by supplying default impl.
> The current patch still allows -1 as return value and removes IOException 
> from the signature.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.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