Mercurial > public > mercurial-scm > hg
view rust/hg-core/src/dirstate_tree.rs @ 50244:07d030b38097 stable
rust-dirstate-v2: don't write dirstate if data file has changed
This fixes the following race:
- process A reads the dirstate
- process B reads and writes the dirstate
- process A writes the dirstate
This either resulted in losing what process B had just written or a crash
because the `uuid` had changed and we were trying to write to a file that
doesn't exist. More explanations inside.
This doesn't fix the issue for dirstate-v1, a later patch addresses it.
author | Rapha?l Gom?s <rgomes@octobus.net> |
---|---|
date | Tue, 28 Feb 2023 17:58:15 +0100 |
parents | 3d0a9c6e614d |
children |
line wrap: on
line source
pub mod dirstate_map; pub mod on_disk; pub mod owning; pub mod path_with_basename; pub mod status;