lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From oleole <ole...@163.com>
Subject best way to update custom fieldcache after index commit?
Date Wed, 01 Jun 2011 16:08:48 GMT
Hi, 


We use Solr, but this seems more like a lucene related issue. So we use lucene fieldcache
to like this 
static DocTerms myfieldvalues = org.apache.lucene.search.FieldCache.DEFAULT.getTerms(reader,
"myField");
which is initialized at first use and will stay in memory for fast retrieval of field values
based on DocID


The problem is after an index/commit, the lucene fieldcache is reloaded in the new searcher,
but this static list need to updated as well,  what is the best way to handle this? Basically
we want to update those custom filedcache whenever there is a commit. The possible solution
I can think of:


1) manually call an request handler to clean up those custom stuffs after commit, which is
a hack and ugly.
2) use some listener event (not sure whether I can use newSearcher event listener in Solr);
also there seems to be a lucene ticket (https://issues.apache.org/jira/browse/LUCENE-2474,
Allow to plug in a Cache Eviction Listener to IndexReader to eagerly clean custom caches that
use the IndexReader (getFieldCacheKey)), not clear to me how to use it though


Any of your suggestion/comments is much appreciated. Thanks!


oleole




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