diff options
| author | Ophestra <cat@gensokyo.uk> | 2026-10-18 20:33:03 +0900 |
|---|---|---|
| committer | Ophestra <cat@gensokyo.uk> | 2026-10-18 20:33:37 +0900 |
| commit | 1a7b909f971dee8c215cf1877cd95a3d690730e1 (patch) | |
| tree | ef27df23f8fcfb9ff770d69181a76efeb0d8c554 /internal/outcome/finalise.go | |
| parent | 9eb09ee7556cea7b9c138e4a3bfa1692f95347a5 (diff) | |
internal/system: file-based big lock
Simultaneous commits or reverts can race if they have overlapping
targets. This big lock synchronises entry into the Commit and Revert
critical sections across all cmd/hakurei processes.
Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'internal/outcome/finalise.go')
| -rw-r--r-- | internal/outcome/finalise.go | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/internal/outcome/finalise.go b/internal/outcome/finalise.go index 4049b8d3..7e5faab6 100644 --- a/internal/outcome/finalise.go +++ b/internal/outcome/finalise.go @@ -74,7 +74,7 @@ func (k *outcome) finalise( return err } - sys := system.New(k.ctx, msg, s.uid.unwrap()) + sys := system.New(k.ctx, msg, s.uid.unwrap(), s.sc.SharePath.Append("lock")) if err := s.newSys(config, sys).toSystem(); err != nil { return err } |
