Feature: Add HeartbeatConsistencyChecks by NickCraver · Pull Request #2656 · StackExchange/StackExchange.Redis

@NickCraver

This is a new feature for allowing keepalive commands to be sent every heartbeat regardless of if they're needed for actual keepalives. I've gotten a ping about a network drop that went undetected for ~8 minutes because of usage only in strings. We see this use case not uncommonly, and because of that string type being the only thing used, we don't detect a protocol fault from subsequent string commands.

The symptoms here are partial/unexpected string payloads but ultimately the wrong answers to the wrong query. Given we don't know at what layer this drop happens (this appears to be _extremely_ rare, 1 in quadrillions as far as we know), the best we can currently do is react to it ASAP.