Skip to content

Commit

Permalink
fix: add logging to empty bloom (#13502)
Browse files Browse the repository at this point in the history
  • Loading branch information
salvacorts authored Jul 12, 2024
1 parent bfa6955 commit c263a68
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 5 deletions.
3 changes: 2 additions & 1 deletion pkg/bloomgateway/processor.go
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,8 @@ func (p *processor) processBlock(_ context.Context, bq *bloomshipper.CloseableBl
iters = append(iters, it)
}

fq := blockQuerier.Fuse(iters, p.logger)
logger := log.With(p.logger, "block", bq.BlockRef.String())
fq := blockQuerier.Fuse(iters, logger)

start := time.Now()
err = fq.Run()
Expand Down
17 changes: 13 additions & 4 deletions pkg/storage/bloom/v1/fuse.go
Original file line number Diff line number Diff line change
Expand Up @@ -299,15 +299,24 @@ func (fq *FusedQuerier) runSeries(schema Schema, series *SeriesWithOffsets, reqs

// Test each bloom individually
bloom := fq.bq.blooms.At()
for j, req := range reqs {
// TODO(owen-d): this is a stopgap to avoid filtering broken blooms until we find their cause.
// In the case we don't have any data in the bloom, don't filter any chunks.
if bloom.ScalableBloomFilter.Count() == 0 {

// TODO(owen-d): this is a stopgap to avoid filtering broken blooms until we find their cause.
// In the case we don't have any data in the bloom, don't filter any chunks.
if bloom.ScalableBloomFilter.Count() == 0 {
level.Warn(fq.logger).Log(
"msg", "Found bloom with no data",
"offset_page", offset.Page,
"offset_bytes", offset.ByteOffset,
)

for j := range reqs {
for k := range inputs[j].InBlooms {
inputs[j].found[k] = true
}
}
}

for j, req := range reqs {
// shortcut: series level removal
// we can skip testing chunk keys individually if the bloom doesn't match
// the query.
Expand Down

0 comments on commit c263a68

Please sign in to comment.