From a7d9afd61bb36ed7bc9cd3b13a594db32c1f3cec Mon Sep 17 00:00:00 2001 From: Mahmoud Hashemi Date: Sun, 2 Feb 2025 21:38:50 -0800 Subject: [PATCH] add fsync to atomic_save for correctness --- boltons/fileutils.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/boltons/fileutils.py b/boltons/fileutils.py index 18c66567..2a057704 100644 --- a/boltons/fileutils.py +++ b/boltons/fileutils.py @@ -465,6 +465,9 @@ def __enter__(self): def __exit__(self, exc_type, exc_val, exc_tb): if self.part_file: + # Ensure data is flushed and synced to disk before closing + self.part_file.flush() + os.fsync(self.part_file.fileno()) self.part_file.close() if exc_type: if self.rm_part_on_exc: