diff --git a/intel/filterlists/database.go b/intel/filterlists/database.go index bff14c5eb..23ce779e2 100644 --- a/intel/filterlists/database.go +++ b/intel/filterlists/database.go @@ -197,6 +197,7 @@ func normalizeEntry(entry *listEntry) { func processEntry(ctx context.Context, filter *scopedBloom, entry *listEntry, records chan<- record.Record) error { normalizeEntry(entry) + // Only add the entry to the bloom filter if it has any sources. if len(entry.Sources) > 0 { filter.add(entry.Type, entry.Entity) } @@ -208,6 +209,12 @@ func processEntry(ctx context.Context, filter *scopedBloom, entry *listEntry, re UpdatedAt: time.Now().Unix(), } + // If the entry is a "delete" update, actually delete it to save space. + if entry.Whitelist { + r.CreateMeta() + r.Meta().Delete() + } + key := makeListCacheKey(strings.ToLower(r.Type), r.Value) r.SetKey(key)