Mercurial push behavior when interrupted before server transaction commit
Mercurial’s push protocol is designed to avoid duplicate writes by checking existing changeset hashes before transferring data. However, the research notes that a network timeout can leave a hanging lock on the server and that large merges may cause client‑side failures before the transaction is finalized. The exact server‑side state after an interrupted pus