diff --git a/cache/redis_cache.go b/cache/redis_cache.go index 42aac3e29..d0b4a5bd2 100644 --- a/cache/redis_cache.go +++ b/cache/redis_cache.go @@ -77,10 +77,12 @@ func (c *Redis[K, V]) Get(ctx context.Context, key K) (V, error) { raw, err := c.client.Get(ctx, strKey).Result() if err == nil { - c.countHit++ - return c.codec.Decode(raw) - } - if !errors.Is(err, redis.Nil) { + value, decErr := c.codec.Decode(raw) + if decErr == nil { + c.countHit++ + return value, nil + } + } else if !errors.Is(err, redis.Nil) { return nothing, err }