0
0
bleve/search/searchers
Marty Schoch 5aa9e95468 major refactor of index/search API
index id's are now opaque (until finally returned to top-level user)
 - the TermFieldDoc's returned by TermFieldReader no longer contain doc id
 - instead they return an opaque IndexInternalID
 - items returned are still in the "natural index order"
 - but that is no longer guaranteed to be "doc id order"
 - correct behavior requires that they all follow the same order
 - but not any particular order

 - new API FinalizeDocID which converts index internal ID's to public string ID

 - APIs used internally which previously took doc id now take IndexInternalID
     - that is DocumentFieldTerms() and DocumentFieldTermsForFields()
 - however, APIs that are used externally do not reflect this change
     - that is Document()

 - DocumentIDReader follows the same changes, but this is less obvious
     - behavior clarified, used to iterate doc ids, BUT NOT in doc id order
     - method STILL available to iterate doc ids in range
     - but again, you won't get them in any meaningful order
     - new method to iterate actual doc ids from list of possible ids
         - this was introduced to make the DocIDSearcher continue working

searchers now work with the new opaque index internal doc ids
 - they return new DocumentMatchInternal (which does not have string ID)
scorerers also work with these opaque index internal doc ids
 - they return DocumentMatchInternal (which does not have string ID)
collectors now also perform a final step of converting the final result
 - they STILL return traditional DocumentMatch (with string ID)
 - but they now also require an IndexReader (so that they can do the conversion)
2016-07-31 13:46:18 -04:00
..
base_test.go major kvstore interface and impl overhaul 2015-09-23 11:25:47 -07:00
ordered_searchers_list.go add newline between license and package 2014-09-02 10:54:50 -04:00
search_boolean_test.go major refactor of index/search API 2016-07-31 13:46:18 -04:00
search_boolean.go major refactor of index/search API 2016-07-31 13:46:18 -04:00
search_conjunction_test.go major refactor of index/search API 2016-07-31 13:46:18 -04:00
search_conjunction.go major refactor of index/search API 2016-07-31 13:46:18 -04:00
search_disjunction_test.go major refactor of index/search API 2016-07-31 13:46:18 -04:00
search_disjunction.go major refactor of index/search API 2016-07-31 13:46:18 -04:00
search_docid_test.go major refactor of index/search API 2016-07-31 13:46:18 -04:00
search_docid.go major refactor of index/search API 2016-07-31 13:46:18 -04:00
search_fuzzy_test.go major refactor of index/search API 2016-07-31 13:46:18 -04:00
search_fuzzy.go major refactor of index/search API 2016-07-31 13:46:18 -04:00
search_match_all_test.go major refactor of index/search API 2016-07-31 13:46:18 -04:00
search_match_all.go major refactor of index/search API 2016-07-31 13:46:18 -04:00
search_match_none_test.go major refactor of index/search API 2016-07-31 13:46:18 -04:00
search_match_none.go major refactor of index/search API 2016-07-31 13:46:18 -04:00
search_numeric_range_test.go major refactor of search package 2014-09-01 11:15:38 -04:00
search_numeric_range.go major refactor of index/search API 2016-07-31 13:46:18 -04:00
search_phrase_test.go major refactor of index/search API 2016-07-31 13:46:18 -04:00
search_phrase.go major refactor of index/search API 2016-07-31 13:46:18 -04:00
search_regexp_test.go major refactor of index/search API 2016-07-31 13:46:18 -04:00
search_regexp.go major refactor of index/search API 2016-07-31 13:46:18 -04:00
search_term_prefix.go major refactor of index/search API 2016-07-31 13:46:18 -04:00
search_term_test.go major refactor of index/search API 2016-07-31 13:46:18 -04:00
search_term.go major refactor of index/search API 2016-07-31 13:46:18 -04:00