[
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]