diff --git a/attic/helpers.py b/attic/helpers.py index ac5266980..04f92336d 100644 --- a/attic/helpers.py +++ b/attic/helpers.py @@ -481,7 +481,7 @@ def write_msgpack(filename, d): with open(filename + '.tmp', 'wb') as fd: msgpack.pack(d, fd) fd.flush() - os.fsync(fd) + os.fsync(fd.fileno()) os.rename(filename + '.tmp', filename) diff --git a/attic/repository.py b/attic/repository.py index eed85dc43..f3a721774 100644 --- a/attic/repository.py +++ b/attic/repository.py @@ -577,6 +577,7 @@ class LoggedIO(object): if self._write_fd: self.segment += 1 self.offset = 0 - os.fsync(self._write_fd) + self._write_fd.flush() + os.fsync(self._write_fd.fileno()) self._write_fd.close() self._write_fd = None