Commit graph

10 commits

Author SHA1 Message Date
Thomas Waldmann
b5404209bb add swidth call to determine string width on terminal
on posix platforms, this is a small wrapper around wcswidth(3).
2016-05-18 17:40:04 +02:00
Marian Beermann
805f63167c
Translate Linux fsflags to BSD flags and vice versa 2016-05-18 00:22:53 +02:00
Marian Beermann
c52861e0ca
Improve LoggedIO write performance, make commit mechanism more solid
- Instead of very small (5 MB-ish) segment files, use larger ones
- Request asynchronous write-out or write-through (TODO) where it is supported,
  to achieve a continuously high throughput for writes
- Instead of depending on ordered writes (write data, commit tag, sync)
  for consistency, do a double-sync commit as more serious RDBMS also do
  i.e. write data, sync, write commit tag, sync
  Since commits are very expensive in Borg at the moment this makes no
  difference performance-wise.

New platform APIs: SyncFile, sync_dir

[x] Naive implementation (equivalent to what Borg did before)
[x] Linux implementation
[ ] Windows implementation
[-] OSX implementation (F_FULLSYNC)
2016-05-14 22:47:18 +02:00
Thomas Waldmann
259f8678d6 acls (linux): helper functions safe_encode/safe_decode 2015-10-19 01:40:15 +02:00
Thomas Waldmann
e818026440 acls (linux): remove int() cast
it seems like the (non-numerical) name or group might get into fields[3] if the name -> uid or group -> gid mapping is unknown.
2015-10-19 00:28:53 +02:00
Thomas Waldmann
1f14d1de19 acls (linux): use surrogatescape error handling for acl_append_numeric_ids and acl_numeric_ids
surrogatescape will decode/encode invalid utf-8 sequences (if we do not get utf-8) in a round-tripping way.
2015-10-19 00:01:19 +02:00
Thomas Waldmann
b2cffe00fe acls (linux): use surrogatescape error handling, fix test
surrogatescape will decode/encode invalid utf-8 sequences (if we do not get utf-8) in a round-tripping way.
2015-10-18 23:33:29 +02:00
Thomas Waldmann
55179fe64d acls (linux): add a test for acl_use_local_uid_gid and fix this function
this has never worked as intended as the function was not using the computed "fields[1]" value at all.
plus there were type issues after that was fixed.
2015-10-18 23:20:01 +02:00
Thomas Waldmann
5e98400a5a fix all references to package name
use relative imports if possible
reorder imports (1. stdlib 2. dependencies 3. borg 4. borg.testsuite)
2015-05-22 19:21:41 +02:00
Thomas Waldmann
78bfc58b47 rename package directory to borg 2015-05-22 17:48:54 +02:00
Renamed from attic/platform_linux.pyx (Browse further)