Diving into Kubernetes' Watch Cache
pierrezemb.fr·18h
Flag this post

Diving Into is a blogpost series where we dig into specific parts of a project’s codebase. In this episode, we dig into Kubernetes’ watch cache implementation.


While debugging an etcd-shim on FoundationDB, I kept hitting "Timeout: Too large resource version" errors. The cache was stuck at revision 3044, but clients requested 3047. Three seconds later: timeout. This led me into the watch cache internals: specifically the 3-second timeout in waitUntilFreshAndBlock() and how progress notifications solve the problem. Let’s dig into how it actually works.

Note: Yes, Clever Cloud runs an etcd-shim on top of FoundationDB for Kubernetes. Truth is, we’re not alone: [AWS](https://aws.amazon.com/blogs/cont…

Similar Posts

Loading similar posts...