Commit c3dda2b
committed
fix(storage): sync manifest copy via write handle
StorageManifest::copy_to synced the copied manifest through a read-only
File::open handle. On Windows FlushFileBuffers requires GENERIC_WRITE,
so every Raft snapshot checkpoint failed deterministically with
ERROR_ACCESS_DENIED (surfaced as snapshot_gate_tests IO errors in the
windows-latest CI job). Match the copy_dir_all pattern in checkpoint.rs
and sync through OpenOptions::new().write(true).1 parent 945e7ed commit c3dda2b
1 file changed
Lines changed: 4 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
36 | 36 | | |
37 | 37 | | |
38 | 38 | | |
39 | | - | |
| 39 | + | |
40 | 40 | | |
41 | 41 | | |
42 | 42 | | |
| |||
127 | 127 | | |
128 | 128 | | |
129 | 129 | | |
130 | | - | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
131 | 133 | | |
132 | 134 | | |
133 | 135 | | |
| |||
0 commit comments