From b57cb9a017653b32efc6de55785d1cc3be1c8dde Mon Sep 17 00:00:00 2001 From: Roman Atachiants Date: Fri, 25 Jun 2021 17:17:59 +0400 Subject: [PATCH] faster filter on any --- column.go | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/column.go b/column.go index 2ca845d..b4126dc 100644 --- a/column.go +++ b/column.go @@ -275,12 +275,7 @@ func (c *columnAny) LoadString(idx uint32) (string, bool) { func (c *columnAny) FilterString(index *bitmap.Bitmap, predicate func(v string) bool) { index.And(c.fill) index.Filter(func(idx uint32) (match bool) { - if idx < uint32(len(c.data)) { - if s, ok := c.LoadString(idx); ok { - return predicate(s) - } - } - return false + return idx < uint32(len(c.data)) && predicate(c.data[idx].(string)) }) }