Commit Graph

1682 Commits

Author SHA1 Message Date
Thomas Waldmann 393e36b6da updated internals docs: hash table max. load factor is 0.75 now 2015-12-13 19:58:32 +01:00
Thomas Waldmann 2ecfa54aee ran build_api and build_usage 2015-12-13 15:47:03 +01:00
Thomas Waldmann f3d60fdb37 update CHANGES 2015-12-13 15:41:18 +01:00
TW 3180bc5b79 Merge pull request #485 from ThomasWaldmann/fuse-improvements
results of some llfuse experiments
2015-12-13 14:43:12 +01:00
Thomas Waldmann 95f6cd4a4e Merge branch 'master' of github.com:borgbackup/borg 2015-12-13 14:26:49 +01:00
Thomas Waldmann 7b61731021 Merge branch 'ThomasWaldmann-remote-logging' 2015-12-13 14:23:44 +01:00
TW 3fd6e75e2e Merge pull request #484 from ThomasWaldmann/check-prefix
Check prefix, fixes #206
2015-12-13 01:19:56 +01:00
Thomas Waldmann 0c166898bf fix python 3.2 str.splitlines() compatibility issue 2015-12-13 00:51:39 +01:00
Thomas Waldmann aa97724c0c add --prefix to check to check only some specific archives, fixes #206 2015-12-13 00:39:52 +01:00
Thomas Waldmann 942120997e log remote exceptions, add remote sysinfo 2015-12-12 22:45:29 +01:00
Thomas Waldmann 2df0bb1f83 remote stderr: keep line endings as is
so even the \r trick works for overwriting the same line.
2015-12-12 22:15:08 +01:00
Thomas Waldmann 2e2e145372 sane remote logging, remote stderr, fixes #461 2015-12-12 22:15:08 +01:00
Thomas Waldmann 229512b6f5 determine log level from the logger, so it works with logging.conf also 2015-12-12 22:15:08 +01:00
Thomas Waldmann f59db03c60 ProgressIndicator: flush the output file or it won't work correctly via ssh
likely due to buffering, the progress indication was not visible.
2015-12-12 22:15:08 +01:00
Thomas Waldmann eab60cce99 pass through some global options from client to server
new: logging level options
refactored:
- umask option and remote_path
- cleanly separated ssh command from borg command
2015-12-12 22:15:08 +01:00
Thomas Waldmann c194f3ca1c give (all) args to open_repository 2015-12-12 22:15:08 +01:00
Thomas Waldmann 9c271afefa unify repo/archive parameter name to "location" 2015-12-12 22:15:08 +01:00
Thomas Waldmann c4610c1edf remove old mailing list archive references
the old archives were merged into the new archives.
2015-12-12 22:02:10 +01:00
Thomas Waldmann e3d5898add borg upgrade - use inplace parameter, fixes #466
i checked it: copying the index.* and hints.* files in advance is not needed, open() and close() do not modify them.

also: fix unicode exception with encoded filename
2015-12-11 22:18:18 +01:00
TW bbeda1f743 Merge pull request #481 from ThomasWaldmann/fix-progress
remove --progress magic, fixes #476
2015-12-10 13:34:02 +01:00
TW 17bfcf37d5 Merge pull request #482 from ThomasWaldmann/fix-upgrade
Fix borg upgrade, issue #466
2015-12-10 13:33:41 +01:00
Thomas Waldmann 60babd14c3 borg upgrade - do not overwrite backup_repo/index.*, fixes #466
the code obviously wrote to both index.* files as they were hardlinked.
now we make a normal copy of index (and also hints) to avoid this.
2015-12-10 11:59:13 +01:00
Thomas Waldmann cd804e72b7 borg upgrade - move some code to convert_repo_index
it was a bit confusing to have repo-related code in a method called "convert_cache".
also fixed a typo "index index".
2015-12-10 11:35:48 +01:00
Thomas Waldmann 7acda553ff borg upgrade - fix locking
because Repository.__init__ normally opens and locks the repo, and the upgrader just
inherited from (borg) Repository, it created a lock file there before the "backup copy"
was made.

No big problem, but a bit unclean.

Fixed it to not lock at the beginning, then make the copy, then lock.
2015-12-10 11:11:06 +01:00
Thomas Waldmann e9ab11be49 borg upgrade - fix README contents 2015-12-10 10:51:56 +01:00
Thomas Waldmann 34b35761dd remove --progress magic, fixes #476
For 0.29 we worked towards a "silent by default" behaviour, so interactive usage will include -v more frequently in future.

But I noticed that this conflicts with the progress display. This would be no problem if users willingly decide which one
of --verbose or --progress they want to see, but before this fix, the progress display was activated magically when
a tty was detected. So, to counteract this magic, users would need to use --no-progress.

That's backwards imho, so I removed the magic again and users have to give --progress when they want
to see a progress indicator. Or (alternatively) they give --verbose when they want to see the long file list.
2015-12-10 10:28:43 +01:00
Thomas Waldmann 8671be1ef2 Increase FUSE read_size to 1024.
From https://github.com/borgbackup/borg/pull/480 discussion:

Did you try 1024 (linux cache block size) or 4096 (internal sector size of bigger
hdds, also used in msgpack fallback.py as lower bound, see link)?

I've tested different values - 512 and 1024 are slightly better than 4096 in my case.

read_size = 1    ls -laR: 75.57 sec
read_size = 64   ls -laR: 27.81 sec
read_size = 512          ls -laR: 27.40 sec
read_size = 1024         ls -laR: 27.20 sec
read_size = 4096         ls -laR: 30.15 sec
read_size = 0    ls -laR: 442.96 sec (default)

OK, maybe we should go for 1024 then. That happens to be < MTU size, so in case someone works on NFS
(or other network FS) we will have less reads, less network packets, less latency.
2015-12-10 10:09:06 +01:00
TW c4588e4eb4 Merge pull request #480 from alex3d/patch-1
Optimized fuse inode cache
2015-12-10 10:05:09 +01:00
Thomas Waldmann 458fc747a3 results of some llfuse experiments
filed some bug reports, added some notes to Vagrantfile.
2015-12-09 00:55:48 +01:00
Thomas Waldmann 20fb4c44a0 use python 3.5.1 to build binaries 2015-12-08 23:44:00 +01:00
TW 3f1e354b0a Merge pull request #428 from ThomasWaldmann/purge-using-least-space
compact_segments: save_space -> free unused segments quickly
2015-12-08 23:37:15 +01:00
alex3d 3256f22c74 Optimized fuse inode cache
Single-shot unpacker read buffer decreased from (default) 1Mb to 512b.
"ls -alR" on ~100k files backup mounted with fuse went from ~7min to 30 seconds.
2015-12-09 00:34:25 +03:00
TW b4a89414fb Merge pull request #478 from rumpelsepp/docs
Fix wrong installation instructions for archlinux
2015-12-08 19:32:18 +01:00
Stefan Tatschner f1b9b95e0d Fix wrong installation instructions for archlinux
On arch I don't want to perform a full system upgrade when
installing a new package; so let's drop the "yu" part.
2015-12-08 19:15:03 +01:00
Thomas Waldmann 499b6f7313 add a test that invokes borg prune --save-space 2015-12-08 18:36:41 +01:00
Thomas Waldmann bec2f72c8e mention --save-space at the place we talk about keeping disk space free 2015-12-08 18:36:41 +01:00
Thomas Waldmann 0c076ad114 compact_segments: save_space -> free unused segments quickly
as soon as one target segment is full, it is a good time to commit it and remove the source segments
that are already completely unused (because they were transferred int the target segment).

so, for compact_segments(save_space=True), the additional space needed should be about 1 segment size.

note: we can't just do that at the end of one source segment as this might create very small
target segments, which is not wanted.
2015-12-08 18:36:41 +01:00
Thomas Waldmann 5f1fcb3e63 add hint "not released yet" to latest changelog entry 2015-12-08 17:47:00 +01:00
Thomas Waldmann f97b9eb90d updated CHANGES 2015-12-08 12:16:58 +01:00
Thomas Waldmann 41eab542a8 add borg upgrade to the docs, fixes #464 2015-12-08 10:33:27 +01:00
Thomas Waldmann f7abff87f9 ran build_usage 2015-12-08 10:21:20 +01:00
Thomas Waldmann 9c3b206bf7 fix mailing list address in setup.py, fixes #468 2015-12-08 10:12:15 +01:00
Thomas Waldmann f2d41b1a69 Merge branch 'ThomasWaldmann-silent' 2015-12-08 10:03:22 +01:00
Thomas Waldmann b41f6dfbbf Merge branch 'silent' of https://github.com/ThomasWaldmann/borg into ThomasWaldmann-silent 2015-12-08 01:56:44 +01:00
Thomas Waldmann 74ee8154f2 add developer docs about output and logging 2015-12-08 01:45:22 +01:00
Thomas Waldmann cb821b119b remove --log-level, add --debug and --info option, update docs
removed --log-level due to overlap with how --verbose works now.

for consistency, added --info as alias to --verbose (as the effect is
setting INFO log level).

also added --debug which sets DEBUG log level.
note: there are no messages emitted at DEBUG level yet.

WARNING is the default (because we want mostly silent behaviour,
except if something serious happens), so we don't need --warning
as an option.
2015-12-08 01:37:34 +01:00
Thomas Waldmann 68225af449 archive checker: remove report_progress, fix log levels 2015-12-08 00:59:41 +01:00
TW d05b9b8ac9 Merge pull request #473 from ThomasWaldmann/hashindex-add
hashindex_add C implementation
2015-12-07 22:32:55 +01:00
TW 207bf5d8b3 Merge pull request #472 from yagebu/master
fix format of umask in help pages
2015-12-07 19:27:20 +01:00
Thomas Waldmann 720fc49498 hashindex_add C implementation
this was also the loop contents of hashindex_merge, but we also need it callable from Cython/Python code.

this saves some cycles, esp. if the key is already present in the index.
2015-12-07 19:13:58 +01:00