2
0
Эх сурвалжийг харах

Merge pull request #471 from yagebu/master

helpers: remove functions that are only used once
TW 9 жил өмнө
parent
commit
c7bde3ba3e
2 өөрчлөгдсөн 10 нэмэгдсэн , 17 устгасан
  1. 0 13
      borg/helpers.py
  2. 10 4
      borg/repository.py

+ 0 - 13
borg/helpers.py

@@ -697,19 +697,6 @@ def location_validator(archive=None):
     return validator
 
 
-def read_msgpack(filename):
-    with open(filename, 'rb') as fd:
-        return msgpack.unpack(fd)
-
-
-def write_msgpack(filename, d):
-    with open(filename + '.tmp', 'wb') as fd:
-        msgpack.pack(d, fd)
-        fd.flush()
-        os.fsync(fd.fileno())
-    os.rename(filename + '.tmp', filename)
-
-
 def decode_dict(d, keys, encoding='utf-8', errors='surrogateescape'):
     for key in keys:
         if isinstance(d.get(key), bytes):

+ 10 - 4
borg/repository.py

@@ -10,8 +10,8 @@ import shutil
 import struct
 from zlib import crc32
 
-from .helpers import Error, ErrorWithTraceback, IntegrityError, read_msgpack, write_msgpack, \
-                     unhexlify, ProgressIndicatorPercent
+import msgpack
+from .helpers import Error, ErrorWithTraceback, IntegrityError, unhexlify, ProgressIndicatorPercent
 from .hashindex import NSIndex
 from .locking import UpgradableLock, LockError, LockErrorT
 from .lrucache import LRUCache
@@ -189,7 +189,8 @@ class Repository:
         else:
             if do_cleanup:
                 self.io.cleanup(transaction_id)
-            hints = read_msgpack(os.path.join(self.path, 'hints.%d' % transaction_id))
+            with open(os.path.join(self.path, 'hints.%d' % transaction_id), 'rb') as fd:
+                hints = msgpack.unpack(fd)
             if hints[b'version'] != 1:
                 raise ValueError('Unknown hints file version: %d' % hints['version'])
             self.segments = hints[b'segments']
@@ -200,7 +201,12 @@ class Repository:
                  b'segments': self.segments,
                  b'compact': list(self.compact)}
         transaction_id = self.io.get_segments_transaction_id()
-        write_msgpack(os.path.join(self.path, 'hints.%d' % transaction_id), hints)
+        hints_file = os.path.join(self.path, 'hints.%d' % transaction_id)
+        with open(hints_file + '.tmp', 'wb') as fd:
+            msgpack.pack(hints, fd)
+            fd.flush()
+            os.fsync(fd.fileno())
+        os.rename(hints_file + '.tmp', hints_file)
         self.index.write(os.path.join(self.path, 'index.tmp'))
         os.rename(os.path.join(self.path, 'index.tmp'),
                   os.path.join(self.path, 'index.%d' % transaction_id))