Etiketten prüfen, nicht glauben Check the label, don't trust it
„Verschlüsselt“, „redundant“, „synchron“ — das sind Etiketten. Was ein System tatsächlich tut, steht nicht auf dem Etikett, sondern in der Implementierung. Die meisten Überraschungen, die ich untersucht habe, waren keine Bugs: Es waren Etiketten, denen zu lange geglaubt wurde.
Die billigste Prüfung ist fast immer verfügbar: eine Messung, ein Blick in den Traffic, ein Vergleich zweier Zustände. Diese Notiz sammelt drei Fälle, in denen das Etikett und das Verhalten auseinanderlagen — und was die jeweils kleinste Prüfung war.
“Encrypted”, “redundant”, “in sync” — those are labels. What a system actually does isn't printed on the label; it's in the implementation. Most surprises I've investigated weren't bugs: they were labels that had been trusted for too long.
The cheapest check is almost always available: a measurement, a look at the traffic, a diff of two states. This note collects three cases where label and behaviour disagreed — and what the smallest check was in each.