Skip to content

Commit

Permalink
Fix regression
Browse files Browse the repository at this point in the history
Signed-off-by: Christian Haudum <christian.haudum@gmail.com>
  • Loading branch information
chaudum committed Apr 24, 2024
1 parent 414c1bc commit a544450
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 3 deletions.
4 changes: 2 additions & 2 deletions pkg/bloomgateway/resolver.go
Original file line number Diff line number Diff line change
Expand Up @@ -110,14 +110,14 @@ func unassignedSeries(mapped []blockWithSeries, series []*logproto.GroupedChunkR
})

maxIdx := sort.Search(len(skipped), func(i int) bool {
return skipped[i].Fingerprint >= maxFp.Fingerprint
return skipped[i].Fingerprint > maxFp.Fingerprint
})

if minIdx == len(skipped) || maxIdx == 0 || minIdx == maxIdx {
continue
}

skipped = append(skipped[0:minIdx], skipped[maxIdx+1:]...)
skipped = append(skipped[0:minIdx], skipped[maxIdx:]...)
}

return skipped
Expand Down
24 changes: 23 additions & 1 deletion pkg/bloomgateway/resolver_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -242,12 +242,34 @@ func TestBlockResolver_UnassignedSeries(t *testing.T) {
{Fingerprint: 0xe0},
},
},
{
desc: "block overlapping single remaining series",
mapped: []blockWithSeries{
{
series: []*logproto.GroupedChunkRefs{
{Fingerprint: 0x00},
{Fingerprint: 0x20},
{Fingerprint: 0x40},
{Fingerprint: 0x60},
{Fingerprint: 0x80},
{Fingerprint: 0xa0},
{Fingerprint: 0xc0},
},
},
{
series: []*logproto.GroupedChunkRefs{
{Fingerprint: 0xe0},
},
},
},
expected: []*logproto.GroupedChunkRefs{},
},
}

for _, tc := range testCases {
t.Run(tc.desc, func(t *testing.T) {
result := unassignedSeries(tc.mapped, series)
require.Equal(t, result, tc.expected)
require.Equal(t, tc.expected, result)
})
}
}

0 comments on commit a544450

Please sign in to comment.