Discussion topic: Move all Commit/Version&Reopen stuff from abstract IR to
DirectoryReader
------------------------------------------------------------------------------------------
Key: LUCENE-3716
URL: https://issues.apache.org/jira/browse/LUCENE-3716
Project: Lucene - Java
Issue Type: Sub-task
Affects Versions: 4.0
Reporter: Uwe Schindler
Assignee: Uwe Schindler
When implementing the parent issue, I noticed a lot of other stuff in
IndexReader thats only implemented in DirectoryReader/SegmentReader and is not
really related to IndexReader at all:
- getVersion (maybe also isCurrent) only affects DirectoryReaders, because of
the commit-stuff there is no easy way for e.g. MultiReader to implement this
- reopen/openIfChanged cannot be implemented easily by most AtomicIndexReaders,
but also CompositeIndexReader is the wrong place to define those methods
In the parant issue, I already let IndexReader.open() return DirectoryReader
and I made this class public. We should move the whole stuff (including
IR.open) to DirectoryReader. Reopening outside DirectoryReader is not really
needed.
If some people think, it should maybe stay abstract (there are ways for other
readers to implement it, but for sure its not specific to IR's in general). In
that case I would decalre an interface that DirectoryReader implements. Code
like SearcherManager/Solr could then instanceof the IR instance and find out if
it's worth reopening/version checking).
--
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]