From d0e4f850268ac69894a1e16d45512b2fa7fd2ea0 Mon Sep 17 00:00:00 2001 From: Steve Yen Date: Tue, 19 Dec 2017 13:37:04 -0800 Subject: [PATCH] scorch avoid extra clone by using roaring.AndNot(x, y) --- index/scorch/segment/zap/posting.go | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/index/scorch/segment/zap/posting.go b/index/scorch/segment/zap/posting.go index e6b76bf9..1ef85eef 100644 --- a/index/scorch/segment/zap/posting.go +++ b/index/scorch/segment/zap/posting.go @@ -72,8 +72,7 @@ func (p *PostingsList) Iterator() segment.PostingsIterator { rv.all = p.postings.Iterator() if p.except != nil { - allExcept := p.postings.Clone() - allExcept.AndNot(p.except) + allExcept := roaring.AndNot(p.postings, p.except) rv.actual = allExcept.Iterator() } else { rv.actual = p.postings.Iterator()