[OT] Error handling in C3 language
Richard (Rikki) Andrew Cattermole
richard at cattermole.co.nz
Wed Nov 19 19:52:53 UTC 2025
On 20/11/2025 1:58 AM, user1234 wrote:
> Slightly related, if I've followed correctly the yesterday cloudflare
> outage was cause because a Result value was unwrapped without actually
> checking if it's valid.
>
> https://www.reddit.com/r/rust/comments/1p0susm/
> cloudflare_outage_on_november_18_2025_caused_by/
For D devs what happend was:
A limit was reached by a bad input file that they pushed to production.
When that limit was exceeded they went and called abort and it killed
the process.
It then took a while to recover.
In D what you should do is throw an Error if it cannot be handled locally.
Kill the task/coroutine/fiber, report back with stack trace (by catching
the Error). Allow further connections.
Reverting the file would be easy enough to do if you have all the
information required to do so within the exception.
Going oh look the runner is up! Nope its down, aw its up again! wahoo,
nope its down... Isn't very helpful when the process isn't the issue.
More information about the Digitalmars-d
mailing list