3 ms·
This. You have to pick a layer that is responsible for retries. If every layer does it, you get a failure amplifier that might become a death star laser.
by erik_seaberg 5y ago
This. You have to pick a layer that is responsible for retries. If every layer does it, you get a failure amplifier that might become a death star laser.
- samhw 5y agoYup. We once analysed a particularly slow query (as in, a specific call to our server, not a path in the abstract) and saw that across the whole cluster it had resulted in eight million retries. And I think it was a 4xx in the end anyway (not that Go is designed for fancy stuff like telling the difference between two kinds of error!).
- marcus_holmes 5y agoThat's why you wrap errors, so you can unwrap them and work out what caused them. But I totally agree that blindly retrying is a bad practice.
- nicoburns 5y ago8 million! How on earth did that happen?