lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Robert Muir <>
Subject Re: Does anyone have tips on managing cached filters?
Date Wed, 28 Nov 2012 07:28:55 GMT
On Wed, Nov 28, 2012 at 12:27 AM, Trejkaz <> wrote:

> On Wed, Nov 28, 2012 at 2:09 AM, Robert Muir <> wrote:
> >
> > I don't understand how a filter could become invalid even though the
> reader
> > has not changed.
> I did state two ways in my last email, but just to re-iterate:
> (1): The filter reflects a query constructed from lines in a text
> file. If some other application modifies the text file, that filter is
> now invalid.
> (2): The filter reflects the results of an SQL query against a
> separate database. If someone inserts a new value into that table,
> then that filter is now invalid.
> Case 1 occurs for things like word lists. Case 2 occurs for things
> like tags. Neither of these would ever be possible to implement purely
> using Lucene, so it is a fact of life that they will become invalid
> for reasons other than the reader changing.
My point is really that lucene (especially clear in 4.0) assumes
indexreaders are immutable points in time. I don't think it makes sense for
us to provide any e.g. filtercaching or similar otherwise, because this is
a key simplification to the design. If you depart from this, by scoring or
filtering from mutable stuff outside the inverted index, things are likely
going to get complicated.

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message