Example #1
0
/*
Create a new searcher over the reader. This searcher might randomly
use threads. If maybeWrap is true, this searcher migt wrap the reader
with one that return nil for sequentialSubReaders.
*/
func newSearcher(r index.IndexReader, maybeWrap bool) *ts.AssertingIndexSearcher {
	random := Random()
	var err error
	// By default, GoLucene would make use of Goroutines to do
	// concurrent search and collect
	//
	// if util.Usually(random) {
	if maybeWrap {
		r, err = maybeWrapReader(r)
		assert(err == nil)
	}
	if random.Intn(2) == 0 {
		ss := ts.NewAssertingIndexSearcher(random, r)
		ss.SetSimilarity(ClassEnvRule.similarity)
		return ss
	}
	ss := ts.NewAssertingIndexSearcherFromContext(random, r.Context())
	ss.SetSimilarity(ClassEnvRule.similarity)
	return ss
	// }
}
Example #2
0
func NewIndexSearcher(r index.IndexReader) IndexSearcher {
	log.Print("Initializing IndexSearcher from IndexReader: ", r)
	return NewIndexSearcherFromContext(r.Context())
}