MCPcopy Create free account
hub / github.com/couchbase/cbft / deleteByQuery

Method deleteByQuery

pindex_bleve_delete.go:69–85  ·  view source on GitHub ↗

deleteByQuery triggers the given query for the index and performs batched deletions for the hits synchronously in a blocking manner. In case of collection deletions, the usage could be from a per dcp feed like below, p := newDelByQueryHandler(t.bindex) n, err := p.deleteByQuery(query) where query is

(query query.Query)

Source from the content-addressed store, hash-verified

67// against the `_scope_collection` field with the search text
68// _$scope_$collection and analyzer `keyword`.
69func (d *delByQueryHandler) deleteByQuery(query query.Query) (int, error) {
70 var handlerMaker search.MakeDocumentMatchHandler
71 handlerMaker = d.MakeDocumentMatchHandler
72 ctx := context.WithValue(context.Background(),
73 search.MakeDocumentMatchHandlerKey,
74 handlerMaker)
75 sr := &bleve.SearchRequest{
76 Query: query,
77 Size: 1,
78 }
79 _, err := d.index.SearchInContext(ctx, sr)
80 if err != nil {
81 return d.totDelCount, fmt.Errorf("bleve_delete: deleteByQuery failed, "+
82 "for query: %+v, err: %v", *sr, err)
83 }
84 return d.totDelCount, err
85}

Callers 1

TestDeleteByQueryFunction · 0.80

Calls 1

SearchInContextMethod · 0.45

Tested by 1

TestDeleteByQueryFunction · 0.64