A worker acquires a distributed lock, starts updating a document, and freezes for 12 seconds.
Its 10-second lock expires. Another worker acquires the same lock, finishes the update—and then the first worker wakes up and overwrites it.
Nothing in that sequence requires the lock service to malfunction.
That is the trap: most “distributed locks” are leases. A lease can tell everyone who owns a resource for a limited window. It cannot recall code after that window or pull a delayed write out of the network.
The fix is not a longer TTL. It is a fencing token enforced by the resource being protected.






