From 13cb71ef650781d5146581957dc034ee4de57ef6 Mon Sep 17 00:00:00 2001 From: filipe oliveira Date: Fri, 30 Sep 2022 13:48:16 +0100 Subject: [PATCH] include * on suffix query across all engines (#21) --- benchmark.go | 2 +- index/redisearch/redisearch.go | 3 --- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/benchmark.go b/benchmark.go index 317cd18..9e09ab3 100644 --- a/benchmark.go +++ b/benchmark.go @@ -47,7 +47,7 @@ func SuffixBenchmark(terms []string, field string, idx index.Index, prefixMinLen counter++ term = terms[counter%len(terms)] } - term = term[len(term)-int(prefixSize):] + term = "*" + term[len(term)-int(prefixSize):] q := query.NewQuery(idx.GetName(), term).Limit(0, 5).SetFlags(query.QueryTypeSuffix).SetField(field) _, _, err := idx.SuffixQuery(*q, debug) counter++ diff --git a/index/redisearch/redisearch.go b/index/redisearch/redisearch.go index 892b054..f890545 100644 --- a/index/redisearch/redisearch.go +++ b/index/redisearch/redisearch.go @@ -221,9 +221,6 @@ func (i *Index) FullTextQuerySingleField(q query.Query, verbose int) (docs []ind if q.Flags&query.QueryTypePrefix != 0 && term[len(term)-1] != '*' { term = fmt.Sprintf("%s*", term) } - if q.Flags&query.QueryTypeSuffix != 0 && term[0] != '*' { - term = fmt.Sprintf("*%s", term) - } queryParam := term if q.Field != "" { queryParam = fmt.Sprintf("@%s:%s", q.Field, term)