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