NIH | National Cancer Institute | NCI Wiki  


Please be advised that NCI Wiki will be undergoing maintenance Monday, July 22nd between 1700 ET and 1800 ET and will be unavailable during this period.
Please ensure all work is saved before said time.

If you have any questions or concerns, please contact the CBIIT Atlassian Management Team.

Document Information

Author: Craig Stancl, Scott Bauer, Cory Endle
Team: LexEVS
Contract: S13-500 MOD4
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:

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