mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-03 17:30:00 +00:00
Merge pull request #130873 from serathius/watchcache-consistency-typo
Panic on failed consistency check and fix typo in logs
This commit is contained in:
commit
bce5886c97
@ -351,16 +351,18 @@ func (c consistencyChecker) startChecking(stopCh <-chan struct{}) {
|
|||||||
func (c *consistencyChecker) check(ctx context.Context) {
|
func (c *consistencyChecker) check(ctx context.Context) {
|
||||||
digests, err := c.calculateDigests(ctx)
|
digests, err := c.calculateDigests(ctx)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
klog.ErrorS(err, "Cache consistentency check error", "resource", c.resourcePrefix)
|
klog.ErrorS(err, "Cache consistency check error", "resource", c.resourcePrefix)
|
||||||
metrics.StorageConsistencyCheckTotal.WithLabelValues(c.resourcePrefix, "error").Inc()
|
metrics.StorageConsistencyCheckTotal.WithLabelValues(c.resourcePrefix, "error").Inc()
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if digests.CacheDigest == digests.EtcdDigest {
|
if digests.CacheDigest == digests.EtcdDigest {
|
||||||
klog.V(3).InfoS("Cache consistentency check passed", "resource", c.resourcePrefix, "resourceVersion", digests.ResourceVersion, "digest", digests.CacheDigest)
|
klog.V(3).InfoS("Cache consistency check passed", "resource", c.resourcePrefix, "resourceVersion", digests.ResourceVersion, "digest", digests.CacheDigest)
|
||||||
metrics.StorageConsistencyCheckTotal.WithLabelValues(c.resourcePrefix, "success").Inc()
|
metrics.StorageConsistencyCheckTotal.WithLabelValues(c.resourcePrefix, "success").Inc()
|
||||||
} else {
|
} else {
|
||||||
klog.ErrorS(nil, "Cache consistentency check failed", "resource", c.resourcePrefix, "resourceVersion", digests.ResourceVersion, "etcdDigest", digests.EtcdDigest, "cacheDigest", digests.CacheDigest)
|
klog.ErrorS(nil, "Cache consistency check failed", "resource", c.resourcePrefix, "resourceVersion", digests.ResourceVersion, "etcdDigest", digests.EtcdDigest, "cacheDigest", digests.CacheDigest)
|
||||||
metrics.StorageConsistencyCheckTotal.WithLabelValues(c.resourcePrefix, "failure").Inc()
|
metrics.StorageConsistencyCheckTotal.WithLabelValues(c.resourcePrefix, "failure").Inc()
|
||||||
|
// Panic on internal consistency checking enabled only by environment variable. R
|
||||||
|
panic(fmt.Sprintf("Cache consistency check failed, resource: %q, resourceVersion: %q, etcdDigest: %q, cacheDigest: %q", c.resourcePrefix, digests.ResourceVersion, digests.EtcdDigest, digests.CacheDigest))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -369,6 +371,7 @@ func (c *consistencyChecker) calculateDigests(ctx context.Context) (*storageDige
|
|||||||
return nil, fmt.Errorf("cache is not ready")
|
return nil, fmt.Errorf("cache is not ready")
|
||||||
}
|
}
|
||||||
cacheDigest, resourceVersion, err := c.calculateStoreDigest(ctx, c.cacher, storage.ListOptions{
|
cacheDigest, resourceVersion, err := c.calculateStoreDigest(ctx, c.cacher, storage.ListOptions{
|
||||||
|
Recursive: true,
|
||||||
ResourceVersion: "0",
|
ResourceVersion: "0",
|
||||||
Predicate: storage.Everything,
|
Predicate: storage.Everything,
|
||||||
ResourceVersionMatch: metav1.ResourceVersionMatchNotOlderThan,
|
ResourceVersionMatch: metav1.ResourceVersionMatchNotOlderThan,
|
||||||
@ -377,6 +380,7 @@ func (c *consistencyChecker) calculateDigests(ctx context.Context) (*storageDige
|
|||||||
return nil, fmt.Errorf("failed calculating cache digest: %w", err)
|
return nil, fmt.Errorf("failed calculating cache digest: %w", err)
|
||||||
}
|
}
|
||||||
etcdDigest, _, err := c.calculateStoreDigest(ctx, c.etcd, storage.ListOptions{
|
etcdDigest, _, err := c.calculateStoreDigest(ctx, c.etcd, storage.ListOptions{
|
||||||
|
Recursive: true,
|
||||||
ResourceVersion: resourceVersion,
|
ResourceVersion: resourceVersion,
|
||||||
Predicate: storage.Everything,
|
Predicate: storage.Everything,
|
||||||
ResourceVersionMatch: metav1.ResourceVersionMatchExact,
|
ResourceVersionMatch: metav1.ResourceVersionMatchExact,
|
||||||
|
Loading…
Reference in New Issue
Block a user