NIH | National Cancer Institute | NCI Wiki  

Error rendering macro 'rw-search'

null

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 15 Next »

Document Information

Author: Craig Stancl, Scott Bauer, Cory Endle
Email: Stancl.craig@mayo.edu, bauer.scott@mayo.edu, endle.cory@mayo.edu
Team: LexEVS
Contract: S13-500 MOD4
Client: NCI CBIIT
National Institutes of Heath
US Department of Health and Human Services

 

Lucene Per-segment search

Per-segment searching is largely kept under the covers but since LexEVS employs a number of customizations of parameters, particularly filter customizations, many queries may break and need refactoring.  At the same time a number of objects have new names, apis and other changes that will require refactoring and updating to an as yet undetermined amount.  Some needed changes are documented in recent migration guides and deprecation lists: 

 

The use of IndexReader in particular will not change, but filters and queries passed into this may break or otherwise be unusable.  Read this article for more information: http://blog.thetaphi.de/2012/02/is-your-indexreader-atomic-major.html

Updated Objects will include

  • ChainedFilter replaced with BooleanFilter
  • HitCollector is replaced by Collector or SimpleCollector
  • MultiSearcher will likely be replaced by something like IndexSearcher(MultiReader)
  • The interface Searchable has gone away and it's former child classes such as IndexSearcher will have to take it's place.
  • Searcher is also gone.
  • TermEnum is replaced by TermsEnum
  • FieldSelector is replaced by FieldVisitor, which has a very different API.

Updated Objects that have new API's include:

  • DocIdSetIterator 
  • IndexWriter
  • IndexReader (optimizing methods can no longer be called on this.)
  • TermsFilter (addTerm() method has gone away and terms are added in the constructor.)


 

  • No labels