@@ -208,7 +208,7 @@ func (c *blocksPostingsForMatchersCache) fetchPostings(blockID ulid.ULID, ix tsd
208
208
return nil , 0 , err
209
209
}
210
210
211
- key := c . cacheKey (seed , blockID , ms ... )
211
+ key := cacheKey (seed , blockID , ms ... )
212
212
promise , loaded := cache .getPromiseForKey (key , fetch )
213
213
if loaded {
214
214
c .metrics .CacheHits .WithLabelValues (cache .name ).Inc ()
@@ -235,7 +235,7 @@ func (c *blocksPostingsForMatchersCache) getSeedForMetricName(metricName string)
235
235
return c .seedByHash .getSeed (c .userId , metricName )
236
236
}
237
237
238
- func ( c * blocksPostingsForMatchersCache ) cacheKey (seed string , blockID ulid.ULID , ms ... * labels.Matcher ) string {
238
+ func cacheKey (seed string , blockID ulid.ULID , ms ... * labels.Matcher ) string {
239
239
slices .SortFunc (ms , func (i , j * labels.Matcher ) int {
240
240
if i .Type != j .Type {
241
241
return int (i .Type - j .Type )
@@ -254,15 +254,16 @@ func (c *blocksPostingsForMatchersCache) cacheKey(seed string, blockID ulid.ULID
254
254
sepLen = 1
255
255
)
256
256
257
- var size int
257
+ size := len ( seed ) + len ( blockID . String ()) + 2 * sepLen
258
258
for _ , m := range ms {
259
- size += len (seed ) + len ( blockID . String ()) + len ( m .Name ) + len (m .Value ) + typeLen + 2 * sepLen
259
+ size += len (m .Name ) + len (m .Value ) + typeLen + sepLen
260
260
}
261
261
sb := strings.Builder {}
262
262
sb .Grow (size )
263
263
sb .WriteString (seed )
264
264
sb .WriteByte ('|' )
265
265
sb .WriteString (blockID .String ())
266
+ sb .WriteByte ('|' )
266
267
for _ , m := range ms {
267
268
sb .WriteString (m .Name )
268
269
sb .WriteString (m .Type .String ())
0 commit comments