mirror of
https://github.com/borgbackup/borg.git
synced 2024-12-26 09:47:58 +00:00
use posix_fadvise for repo writes also
This commit is contained in:
parent
c7d232c4ce
commit
874f5c491b
1 changed files with 4 additions and 0 deletions
|
@ -555,6 +555,10 @@ def write_put(self, id, data):
|
||||||
header = self.header_no_crc_fmt.pack(size, TAG_PUT)
|
header = self.header_no_crc_fmt.pack(size, TAG_PUT)
|
||||||
crc = self.crc_fmt.pack(crc32(data, crc32(id, crc32(header))) & 0xffffffff)
|
crc = self.crc_fmt.pack(crc32(data, crc32(id, crc32(header))) & 0xffffffff)
|
||||||
fd.write(b''.join((crc, header, id, data)))
|
fd.write(b''.join((crc, header, id, data)))
|
||||||
|
if hasattr(os, 'posix_fadvise'): # python >= 3.3, only on UNIX
|
||||||
|
# tell the OS that it does not need to cache what we just wrote,
|
||||||
|
# avoids spoiling the cache for the OS and other processes.
|
||||||
|
os.posix_fadvise(fd.fileno(), 0, 0, os.POSIX_FADV_DONTNEED)
|
||||||
self.offset += size
|
self.offset += size
|
||||||
return self.segment, offset
|
return self.segment, offset
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue