OhMyBug

concurrency/state

Timeout Leaves Work Running

#56rare16 sightingsfirst seen August 2026

What goes wrong

A timeout wrapper gives up waiting and returns to the caller, but nothing stops the work it was waiting for. The abandoned work keeps running, holding resources and writing results after the caller has moved on.

Example

A request is raced against a 5-second timer; the timer wins and the caller returns an error, but the request keeps running and writes its result to the database a minute later.

Not to be confused with

The missing piece is stopping the work and waiting for it to finish; a timeout that is merely too short, or a cancellation signal caught as an ordinary error (Swallowed Cancellation), are different bugs.

Discovered by

Field notes · 4