Commit Graph

1949 Commits

Author SHA1 Message Date
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
Jakob Schnitzer 3ca1d33d5c fix format of umask in help pages
fixes #463
2015-12-07 18:42:50 +01:00
TW c7bde3ba3e Merge pull request #471 from yagebu/master
helpers: remove functions that are only used once
2015-12-07 17:55:05 +01:00
Jakob Schnitzer 17952dff48 helpers: remove functions that are only used once
The read_msgpack and write_msgpack functions were only used in one place
each.  Since msgpack is read and written in lots of places, having
functions with these generic names is confusing. Also, the helpers
module is quite a mess, so reducing its size seems to be a good idea.
2015-12-07 14:29:01 +01:00
TW 689e40c398 Merge pull request #470 from DanielDent/patch-1
Load over SSL (avoids mixed content)
2015-12-07 03:27:28 +01:00
Daniel Dent 8c91923fb5 Load over SSL (avoids mixed content) 2015-12-06 18:08:32 -08:00
TW 2e5baa6ec2 Merge pull request #459 from ThomasWaldmann/increase-rpc-api-version
increase rpc protocol version to 2, fixes #458
2015-12-03 21:16:11 +01:00
Thomas Waldmann 6d083c0695 increase rpc protocol version to 2
this is needed because due to the locking improvements, some rpc calls' signature changed slightly.
2015-12-03 17:50:37 +01:00
Thomas Waldmann 1f8b64cc1f readme: add note about clientside encryption 2015-12-03 17:35:52 +01:00
TW 19f0b16d4d Merge pull request #457 from ThomasWaldmann/docs-add-resources
docs: add resources, fixes #149
2015-12-03 17:14:49 +01:00
Thomas Waldmann f1f2e78ced docs: move related projects to resources section 2015-12-03 17:13:39 +01:00
Thomas Waldmann b0975a75b5 docs: add resources section, with videos, talks, presentations 2015-12-03 16:58:48 +01:00
TW f5634092a2 Merge pull request #455 from ThomasWaldmann/add-progress-indication
Add progress indication, fixes #394
2015-12-03 15:04:44 +01:00
Thomas Waldmann df24ce5acd progress indicators: add tests 2015-12-03 14:45:16 +01:00
Thomas Waldmann 887196b00e progress indicators: better docstring, minor code improvement 2015-12-03 14:14:28 +01:00
TW 9005586ca4 Merge pull request #452 from ThomasWaldmann/hashtable
misc. hash table tuning
2015-12-02 16:45:39 +01:00
TW 10bf6fdd88 Merge pull request #456 from skorokithakis/master
Display proper repo URL.
2015-12-02 16:42:54 +01:00
Stavros Korokithakis d572ceaca2 Display proper repo URL. 2015-12-02 16:51:49 +02:00
Thomas Waldmann 21bd01ef16 add a --filter option replacing --changed/--unchanged
the problem here was that we do not just have changed and unchanged items,
but also a lot of items besides regular files which we just back up "as is" without
determining whether they are changed or not. thus, we can't support changed/unchanged
in a way users would expect them to work.

the A/M/U status only applies to the data content of regular files (compared to the index).
for all items, we ALWAYS save the metadata, there is no changed / not changed detection there.

thus, I replaced this with a --filter option where you can just specify which
status chars you want to see listed in the output.

E.g. --filter AM will only show regular files with A(dded) or M(odified) state, but nothing else.
Not giving --filter defaults to showing all items no matter what status they have.

Output is emitted via logger at info level, so it won't show up except if the logger is at that level.
2015-12-02 03:29:20 +01:00
Thomas Waldmann fe6916bd22 refactor upgrade progress indication code to use ProgressIndicatorPercent 2015-12-02 01:26:26 +01:00
Thomas Waldmann 7a1316cb79 implement ProgressIndicators, use it for repo check and segment replay, fixes #195, fixes #188 2015-12-02 01:06:07 +01:00
TW fffdb59c71 Merge pull request #454 from skorokithakis/master
Clarify encryption.
2015-12-02 00:53:59 +01:00
Stavros Korokithakis e6d3720d9b Clarify encryption. 2015-12-02 01:48:08 +02:00
TW 9dc18f4b7c Merge pull request #453 from N-006/patch-1
Borg moved to Arch Linux [community]
2015-12-01 23:37:57 +01:00
Vlad 5280c0830e Borg moved to Arch Linux [community] 2015-12-02 00:16:25 +02:00
Thomas Waldmann 610300c1ce misc. hash table tuning
BUCKET_UPPER_LIMIT: 90% load degrades hash table performance severely,
so I lowered that to 75% (which is a usual value - java uses 75%, python uses 66%).
I chose the higher value of both because we also should not consume too much
memory, considering the RAM usage already is rather high.

MIN_BUCKETS: I can't explain why, but benchmarks showed that choosing 2^N as
table size severely degrades performance (by 3 orders of magnitude!). So a prime
start value improves this a lot, even if we later still use the grow-by-2x algorithm.

hashindex_resize: removed the hashindex_get() call as we already know that the values
come at key + key_size address.

hashindex_init: do not calloc X*Y elements of size 1, but rather X elements of size Y.
Makes the code simpler, not sure if it affects performance.

The tests needed fixing as the resulting hashtable blob is now of course different due
to the above changes, so its sha hash changed.
2015-12-01 21:18:58 +01:00
Antoine Beaupré b09643e14f change file status test and cleanup last ref to --verbose
this ports the changes here to #445
2015-11-24 12:11:43 -05:00
Antoine Beaupré 1785ca54ba do not display unchanged files by default
add a --unchanged topical file to display those files
2015-11-24 12:07:57 -05:00
Antoine Beaupré fce5aed5bb move changed with other topical flags
we need to have a sane default there otherwise the option may not be defined in some sub-commands and will crash
2015-11-24 12:07:57 -05:00
Antoine Beaupré a062e8f821 update documentation to follow changes 2015-11-24 12:07:57 -05:00
Antoine Beaupré 8d3d1c22d6 silence borg by default
this also prints file status on stderr directly, bypassing the logger
as we do with other topical flags (like progress and status)
2015-11-24 12:07:56 -05:00
Antoine Beaupré 9899eaf241 silence file listing unless --changed is present 2015-11-24 12:07:56 -05:00
Antoine Beaupré 6b265f2a53 alias --verbose to --log-level=info
print_verbose is now simply logger.info() and is always displayed if
log level allows it. this affects only the `prune` and `mount`
commands which were the only users of the --verbose option. the
additional display is which archives are kept and pruned and a single
message when the fileystem is mounted.

files iteration in create and extract is now printed through a
separate function which will be later controled through a topical
flag.
2015-11-24 12:07:03 -05:00
TW d1377e5e15 Merge pull request #445 from anarcat/status-bug
add test for the weird unchanged file status
2015-11-24 18:04:09 +01:00