[ 
https://issues.apache.org/jira/browse/LUCENE-3620?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13163673#comment-13163673
 ] 

Uwe Schindler commented on LUCENE-3620:
---------------------------------------

Hi Shai, thats wanted that e.g. reopen/clone are not delegated. Because 
reopen/openIfChanged must return a new instance of the current IndexReader 
(which extends FilterIndexReader). By simply delegating it would violate this.

Just a comment to your previous mail: If you call super.reopen() you would 
confuse the backwards layer (using VirtualMethod) for the transition to 
doOpenIfChanged, so please don't do it. Just leave it unimplemented.

I would extends the test to add the "wanted" methods in a HashSet so it will 
not check them.

- reopen(), doOpenIfChanged(), clone(): see above
- numDeletedDocs should be final in IndexReader
- deleteDocument & similar may be delegated (but i am not sure)
                
> FilterIndexReader does not override all of IndexReader methods
> --------------------------------------------------------------
>
>                 Key: LUCENE-3620
>                 URL: https://issues.apache.org/jira/browse/LUCENE-3620
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: core/search
>            Reporter: Shai Erera
>            Assignee: Shai Erera
>            Priority: Minor
>             Fix For: 3.6, 4.0
>
>         Attachments: LUCENE-3620.patch
>
>
> FilterIndexReader does not override all of IndexReader methods. We've hit an 
> error in LUCENE-3573 (and fixed it). So I thought to write a simple test 
> which asserts that FIR overrides all methods of IR (and we can filter our 
> methods that we don't think that it should override). The test is very simple 
> (attached), and it currently fails over these methods:
> {code}
> getRefCount
> incRef
> tryIncRef
> decRef
> reopen
> reopen
> reopen
> reopen
> clone
> numDeletedDocs
> document
> setNorm
> setNorm
> termPositions
> deleteDocument
> deleteDocuments
> undeleteAll
> getIndexCommit
> getUniqueTermCount
> getTermInfosIndexDivisor
> {code}
> I didn't yet fix anything in FIR -- if you spot a method that you think we 
> should not override and delegate, please comment.

--
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: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to