>
> Normally, reopens only go forwards in time, so if you could ensure
> that when you reopen one reader to another, the 2nd one is always
> "newer", then I think you should never hit this issue


Mike, I'm not sure if I fully understand your suggestion. In a nutshell,
the use here case is as follows: I want to be able to search the index at a
particular point in time, let's call it T0. To that end, I save the state
at that time via a commit and take a snapshot of the index. After that, the
index is free to move on, to another point in time, say T1 - and likely
does. The optimization we have been discussing (and this is what the test
code I posted does) basically asks the reader to go back to point T0, while
reusing as much of the state of the index from T1, as long as it is
unchanged between the two.

That's what DirectoryReader.openIfChanged(DirectoryReader, IndexCommit) is
supposed to do internally... or am I misinterpreting the
intent/implementation of it?

Reply via email to