Browse Source

Merge pull request #3006 from ThomasWaldmann/close-segment-1.1

with-lock: close segment file before invoking subprocess (1.1-maint)
TW 8 years ago
parent
commit
37cb3b496e
1 changed files with 5 additions and 0 deletions
  1. 5 0
      src/borg/archiver.py

+ 5 - 0
src/borg/archiver.py

@@ -1664,6 +1664,11 @@ class Archiver:
         # the encryption key (and can operate just with encrypted data).
         data = repository.get(Manifest.MANIFEST_ID)
         repository.put(Manifest.MANIFEST_ID, data)
+        # usually, a 0 byte (open for writing) segment file would be visible in the filesystem here.
+        # we write and close this file, to rather have a valid segment file on disk, before invoking the subprocess.
+        # we can only do this for local repositories (with .io), though:
+        if hasattr(repository, 'io'):
+            repository.io.close_segment()
         try:
             # we exit with the return code we get from the subprocess
             return subprocess.call([args.command] + args.args)