lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Woolf, Ross" <>
Subject Using field cache on real time index
Date Mon, 07 Jun 2010 18:02:50 GMT
I'm looking for some clarification on the use of field cache in a real time index situation.

We are using Lucene in a real time fashion, but we update our reader via IndexReader.reopen()
rather than using the IndexWriter.getReader(); After opening a new reader the old reader is

In the book Lucene in Action (2nd) it mentions something regarding since 2.9.2 you can pass
in a subreader instead of the reader if you are reopening a reader so that you only have to
load the new segment.  But it is not clear on how all of this works.

My big question is does doing it this way mean that I can reuse the portion of the cache that
was created with prior readers?  Or does the whole cache have to be rebuilt each time I do
a reopen?  I guess what I am asking is if in a real time situation, since I will be reopening
readers regularly, is my cache constantly having to be rebuilt from scratch, or can I use
this subreader approach to sequentially add to the cache?

Also if the approach lets me sequentially add to the cache, how exactly do I go about dealing
with the subreaders?  All I have used before is my primary reader and as I perform a reopen,
how do I know what subreader to pass into the fieldcache?

Any info appreciated.
View raw message