$ the-wire · showcase
Admission webhook metrics go beta; watch cache gets a minheap freshness waiter
By RepoJournal · Filed · About Kubernetes · Composed from the cited sources · methodology
The apiserver's admission webhook metrics graduate to beta with the legacy metric names deprecated, while serathius's watch cache work lands a minheap-based freshness waiter that wakes only the goroutines waiting on a given resource version.
Merge pull request #143357 from tico88612/feat/apiserver-admission-metrics-beta kubernetes/apiserver
The merged change promotes admission webhook metrics to beta and deprecates the legacy metric names, so dashboards and alerts keyed to the old names will need to move to the new ones. The same commit is published into kubernetes/kubernetes.
Implement minheap based freshness waiter kubernetes/kubernetes
On consistent reads waiting for a late resource version under dense updates, every goroutine used to be woken to re-check a condition that was still false. The waiter now tracks the RVs callers are waiting for in a minheap and wakes only those goroutines; serathius reports write throughput benchmarks confirmed the original problem, which is why ConsistentGetFromCache was affected.
client-go/transport: send requests through another pool member when dialing fails kubernetes/client-go
When the connection pool member picked for a request fails to dial, client-go now sends the request once more through another member, which usually already holds a working connection. This is safe only for requests whose body can be read again, that is no body or GetBody set, and only dial errors are retried; other errors and errors from the request's own context are returned as before.
DRA E2E: stop testing v1beta1 API kubernetes/kubernetes
Setting the v1.38.0-beta.0 tag made the apiserver enforce the resource.k8s.io/v1beta1 deprecation, so resourceclaims.v1beta1.resource.k8s.io is no longer available and the DRA end-to-end tests stop exercising the beta API. The warning text reads "deprecated in v1.35+, unavailable in v1.38+".
Merge pull request #143876 from lukasmetzner/ccm-watch-based-routes-beta kubernetes/controller-manager
Also merged: CloudControllerManagerWatchBasedRoutesReconciliation graduates to beta (default off) in 1.38, cloud-provider extracts its event reasons into an events package, and client-go's concurrent watch decoder now routes panics in its goroutines through utilruntime.HandleCrash.
Action items
- → Move admission webhook metric dashboards and alerts off the deprecated legacy names before 1.38 kubernetes/apiserver [plan]
- → Remove resource.k8s.io/v1beta1 ResourceClaim usage before 1.38, where the API is unavailable kubernetes/kubernetes [plan]