diff options
| author | Simon MacMullen <simon@rabbitmq.com> | 2013-10-21 13:35:14 +0100 |
|---|---|---|
| committer | Simon MacMullen <simon@rabbitmq.com> | 2013-10-21 13:35:14 +0100 |
| commit | 4163613eb274f851ae0e83038ea0a906491720e5 (patch) | |
| tree | fa16adab69f14c336c3ed2abbeb15a282cce7a06 | |
| parent | b4d32d99a0f8cc8e171885f8de6a404f882de1e3 (diff) | |
| download | rabbitmq-server-git-4163613eb274f851ae0e83038ea0a906491720e5.tar.gz | |
Sync before rename, since the rename is not affected by the sync and doing it this way round means we can't expose the results of a half-written but renamed file by crashing after the rename but before the sync.
| -rw-r--r-- | src/rabbit_file.erl | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/rabbit_file.erl b/src/rabbit_file.erl index 4cf314cae2..1a766b05b0 100644 --- a/src/rabbit_file.erl +++ b/src/rabbit_file.erl @@ -181,8 +181,8 @@ with_synced_copy(Path, Modes, Fun) -> {ok, Hdl} -> try Result = Fun(Hdl), - ok = prim_file:rename(Bak, Path), ok = prim_file:sync(Hdl), + ok = prim_file:rename(Bak, Path), Result after prim_file:close(Hdl) |
