[ https://issues.apache.org/jira/browse/LUCENE-3464?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13154440#comment-13154440 ]
Uwe Schindler commented on LUCENE-3464: --------------------------------------- This code does not compile (fails by saying IndexReader has no accessible method doOpenIfChanged()): {code:java} package my.sophisticated.package; @Override protected IndexReader doOpenIfChanged() throws CorruptIndexException, IOException { final IndexReader n=in.doOpenIfChanged(); return (n==null) ? null : new MySophisticatedIndexReader(n); } {code} This is the working workaround but looks wrong (and works around the VirtualMethod issues): {code:java} @Override protected IndexReader doOpenIfChanged() throws CorruptIndexException, IOException { final IndexReader n=IndexReader.openIfChanged(in); return (n==null) ? null : new MySophisticatedIndexReader(n); } {code} > Rename IndexReader.reopen to make it clear that reopen may not happen > --------------------------------------------------------------------- > > Key: LUCENE-3464 > URL: https://issues.apache.org/jira/browse/LUCENE-3464 > Project: Lucene - Java > Issue Type: Bug > Reporter: Michael McCandless > Assignee: Michael McCandless > Fix For: 3.5, 4.0 > > Attachments: LUCENE-3464.3x.patch, LUCENE-3464.patch, > LUCENE-3464.patch, LUCENE-3464_see_its_just_fine.patch > > > Spinoff from LUCENE-3454 where Shai noted this inconsistency. > IR.reopen sounds like an unconditional operation, which has trapped users in > the past into always closing the old reader instead of only closing it if the > returned reader is new. > I think this hidden maybe-ness is trappy and we should rename it > (maybeReopen? reopenIfNeeded?). > In addition, instead of returning "this" when the reopen didn't happen, I > think we should return null to enforce proper usage of the maybe-ness of this > API. -- 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