@@ -352,16 +352,18 @@ func (c consistencyChecker) startChecking(stopCh <-chan struct{}) {
352
352
func (c * consistencyChecker ) check (ctx context.Context ) {
353
353
digests , err := c .calculateDigests (ctx )
354
354
if err != nil {
355
- klog .ErrorS (err , "Cache consistentency check error" , "resource" , c .resourcePrefix )
355
+ klog .ErrorS (err , "Cache consistency check error" , "resource" , c .resourcePrefix )
356
356
metrics .StorageConsistencyCheckTotal .WithLabelValues (c .resourcePrefix , "error" ).Inc ()
357
357
return
358
358
}
359
359
if digests .CacheDigest == digests .EtcdDigest {
360
- klog .V (3 ).InfoS ("Cache consistentency check passed" , "resource" , c .resourcePrefix , "resourceVersion" , digests .ResourceVersion , "digest" , digests .CacheDigest )
360
+ klog .V (3 ).InfoS ("Cache consistency check passed" , "resource" , c .resourcePrefix , "resourceVersion" , digests .ResourceVersion , "digest" , digests .CacheDigest )
361
361
metrics .StorageConsistencyCheckTotal .WithLabelValues (c .resourcePrefix , "success" ).Inc ()
362
362
} else {
363
- klog .ErrorS (nil , "Cache consistentency check failed" , "resource" , c .resourcePrefix , "resourceVersion" , digests .ResourceVersion , "etcdDigest" , digests .EtcdDigest , "cacheDigest" , digests .CacheDigest )
363
+ klog .ErrorS (nil , "Cache consistency check failed" , "resource" , c .resourcePrefix , "resourceVersion" , digests .ResourceVersion , "etcdDigest" , digests .EtcdDigest , "cacheDigest" , digests .CacheDigest )
364
364
metrics .StorageConsistencyCheckTotal .WithLabelValues (c .resourcePrefix , "failure" ).Inc ()
365
+ // Panic on internal consistency checking enabled only by environment variable. R
366
+ panic (fmt .Sprintf ("Cache consistency check failed, resource: %q, resourceVersion: %q, etcdDigest: %q, cacheDigest: %q" , c .resourcePrefix , digests .ResourceVersion , digests .EtcdDigest , digests .CacheDigest ))
365
367
}
366
368
}
367
369
@@ -370,6 +372,7 @@ func (c *consistencyChecker) calculateDigests(ctx context.Context) (*storageDige
370
372
return nil , fmt .Errorf ("cache is not ready" )
371
373
}
372
374
cacheDigest , resourceVersion , err := c .calculateStoreDigest (ctx , c .cacher , storage.ListOptions {
375
+ Recursive : true ,
373
376
ResourceVersion : "0" ,
374
377
Predicate : storage .Everything ,
375
378
ResourceVersionMatch : metav1 .ResourceVersionMatchNotOlderThan ,
@@ -378,6 +381,7 @@ func (c *consistencyChecker) calculateDigests(ctx context.Context) (*storageDige
378
381
return nil , fmt .Errorf ("failed calculating cache digest: %w" , err )
379
382
}
380
383
etcdDigest , _ , err := c .calculateStoreDigest (ctx , c .etcd , storage.ListOptions {
384
+ Recursive : true ,
381
385
ResourceVersion : resourceVersion ,
382
386
Predicate : storage .Everything ,
383
387
ResourceVersionMatch : metav1 .ResourceVersionMatchExact ,
0 commit comments