Defaulting NIOFSDir could account for some of the recent speed improvements users have been reporting in Lucene 2.9. So removing it as a default could reverse those and people could then report Lucene 3.X has slowed...
On Thu, Jan 28, 2010 at 5:24 AM, Michael McCandless <luc...@mikemccandless.com> wrote: > Bummer. > > So the only viable workarounds are 1) don't use Thread.interrupt (nor, > things like Future.cancel, which in turn use Thread.interrupt) with > NIOFSDir, or 2) we fix NIOFSDir to reopen the channel AND the app must > make a deletion policy that keeps a commit alive if any reader is > using it. Or, 3) don't use NIOFSDir! > > Mike > > On Thu, Jan 28, 2010 at 7:29 AM, Simon Willnauer > <simon.willna...@googlemail.com> wrote: >> On Thu, Jan 28, 2010 at 12:43 PM, Michael McCandless >> <luc...@mikemccandless.com> wrote: >>> On Thu, Jan 28, 2010 at 6:38 AM, Uwe Schindler <u...@thetaphi.de> wrote: >>> >>>> So I checked the code of NIOFSIndexInput, my last comment was not really >>>> correct: >>>> NIOFSIndexInput extends SimpleFSIndexInput and that opens the RAF. In the >>>> ctor RAF.getChannel() is called. The RAF keeps open until the file is >>>> closed (and also the channel). >>>> >>>> So it's really simple to fix in my opinion, just call getChannel() again >>>> on this exception. Because the RAF should still be open? >> >> Short answer: >> public final FileChannel getChannel() { >> synchronized (this) { >> if (channel == null) >> channel = FileChannelImpl.open(fd, true, rw, this); >> return channel; >> } >> } >> >> this is not gonna work I tried it before. The RandomAccessFile buffers >> the channel!! >> >> simon >>> >>> I think we need a definitive answer on what happens to the RAF when >>> the FileChannel was closed by Thread.Interrupt. Simon can you test >>> this? >>> >>> Mike >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: java-dev-unsubscr...@lucene.apache.org >>> For additional commands, e-mail: java-dev-h...@lucene.apache.org >>> >>> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: java-dev-unsubscr...@lucene.apache.org >> For additional commands, e-mail: java-dev-h...@lucene.apache.org >> >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: java-dev-unsubscr...@lucene.apache.org > For additional commands, e-mail: java-dev-h...@lucene.apache.org > > --------------------------------------------------------------------- To unsubscribe, e-mail: java-dev-unsubscr...@lucene.apache.org For additional commands, e-mail: java-dev-h...@lucene.apache.org