Commit graph

732 commits

Author SHA1 Message Date
TW
7cd8793e43 Merge pull request #1026 from ThomasWaldmann/improve-extract-docs
better help / docs for borg extract --dry-run, fixes #1022
2016-05-07 19:24:07 +02:00
Thomas Waldmann
d2988444c0 better help / docs for borg extract --dry-run, fixes #1022 2016-05-07 18:53:58 +02:00
Thomas Waldmann
61a73f5f91 _chunker.c: remove tab characters
always use 4 spaces for indenting.
2016-05-07 18:18:40 +02:00
Thomas Waldmann
dabf816364 prune: cleanup checkpoints
kill all the checkpoints when pruning, except the latest one which might be
useful for continuing an interrupted backup. kill the latest checkpoint also
if it is already superceded by a successful backup.

note: this only works on checkpoints matched by --prefix, other checkpoints
      are not touched.
2016-05-05 15:15:14 +02:00
Thomas Waldmann
39c0757020 Merge branch '1.0-maint' 2016-05-05 13:55:38 +02:00
Thomas Waldmann
9e09786b33 borg create help: document format tags, fixes #894
docs: rephrased, more useful examples
2016-05-05 13:38:08 +02:00
Thomas Waldmann
f070e2313d Merge branch '1.0-maint' 2016-05-03 22:07:12 +02:00
Thomas Waldmann
75b3e786ed implement compression heuristics based on lz4-compressibility, fixes #1006
also: add some tests that invoke all supported compression algorithms
2016-05-03 19:57:44 +02:00
Thomas Waldmann
962c2e9d54 borg with-lock REPO CMD ARGS 2016-05-02 23:29:17 +02:00
Thomas Waldmann
b743fd09ab borg prune: ignore checkpoints, fixes #997
also:
- add a test for this
- add some words to borg create help about the archive name
2016-05-02 01:12:15 +02:00
Thomas Waldmann
0bdc757bbf add tests for BORG_KEY_FILE env var 2016-05-01 22:10:29 +02:00
Félix Sipma
a5ba0abe42 support new env var 'BORG_KEY_FILE' 2016-05-01 21:15:09 +02:00
enkore
369af5feb3 Merge pull request #970 from enkore/feature/selftest
Add power-on self-test
2016-04-28 01:07:28 +02:00
Marian Beermann
fcd323f22a
Bump API version of crypto.pyx (overlooked in c5bd7f2) 2016-04-28 00:06:40 +02:00
Marian Beermann
8d3b1a5804 Add self tests
These run in ~100 ms here, so even on much slower machines (where also
Python setup will be slower) it shouldn't be noticeable at all.
2016-04-28 00:06:19 +02:00
Thomas Waldmann
f20a78cda8 flexible compression 2016-04-27 03:08:55 +02:00
Thomas Waldmann
2ccc02d2f1 make borg info more similar to borg create --stats, add duration 2016-04-25 15:07:10 +02:00
Thomas Waldmann
d883791df7 use safe_encode/decode 2016-04-23 22:57:04 +02:00
Thomas Waldmann
d3fe134abd add a bin_to_hex helper and some properties 2016-04-23 22:42:56 +02:00
enkore
65f442dc8d Merge pull request #965 from enkore/fix/mount-perf
borg mount: cache partially read data chunks
2016-04-23 18:07:01 +02:00
Marian Beermann
bfb00dfa01
borg mount: cache partially read data chunks
Fixes #966
2016-04-23 18:05:22 +02:00
TW
7ffbd4a200 Merge pull request #941 from ThomasWaldmann/keep-last-n
implement --keep-last N via --keep-secondly N, also --keep-minutely, fixes #537
2016-04-22 02:01:41 +02:00
Thomas Waldmann
5e470007f0 ChunkBuffer: add test for leaving partial chunk in buffer 2016-04-22 01:20:47 +02:00
Marian Beermann
528913b220
Fix #945 2016-04-19 09:19:03 +02:00
Thomas Waldmann
0877d104af Merge branch 'master' into keep-last-n 2016-04-19 02:14:03 +02:00
enkore
76d0c20138
Merge branch '1.0-maint' into master 2016-04-19 00:54:01 +02:00
Thomas Waldmann
d52b5cf529 prune: fix bad validator, fixes #942 2016-04-19 00:49:35 +02:00
Thomas Waldmann
b4c4a24f0a prune: simplify code, have unified output list in reverse time order
to better visualize the "thinning out", we now list all archives in
reverse time order. at the left of each entry we tell whether we delete
or keep the archive.

previously it first listed all kept archives, then all deleted archives.
2016-04-18 23:16:41 +02:00
Thomas Waldmann
47103f9047 prune: reorder help text, important -> easy -> more difficult
also rephrase slightly, hopefully more clear now.
2016-04-18 23:11:59 +02:00
Thomas Waldmann
f09812d5ad implement --keep-last N via --keep-secondly N, also --keep-minutely
assuming that there is not more than 1 backup archive made in 1s,
--keep-last N and --keep-secondly N are equivalent.
2016-04-18 21:56:05 +02:00
TW
14bd4c756d Merge pull request #932 from enkore/feature/inorder
create: Visit files in inode order
2016-04-18 20:40:20 +02:00
Thomas Waldmann
a345b34291 pass meta-data around, fixes #765
_Chunk is a namedtuple of (meta, data), create chunks using Chunk(data, **meta).

This does not yet have any visible functionality, meta is always empty dict right now.
2016-04-18 19:22:32 +02:00
Marian Beermann
f13aef5d83
create: Visit files in inode order 2016-04-17 21:32:24 +02:00
TW
5b6377e0c2 Merge pull request #927 from ThomasWaldmann/move-constants
move some constants to new constants module
2016-04-17 20:22:16 +02:00
klemens
6b93042ec8 fix sepelling, as of lintian.debian.org 2016-04-17 16:24:26 +02:00
Thomas Waldmann
9a70a20370 move some constants to new constants module 2016-04-17 15:58:42 +02:00
TW
77966c7007 Merge pull request #925 from enkore/fix/hashindexadd
Cache: update add_chunk to use ChunkIndex.add
2016-04-17 01:58:44 +02:00
TW
ec782ef70b Merge pull request #923 from ThomasWaldmann/docs-buzhash
docs: added some insights by "Voltara", fixes #903
2016-04-17 01:18:35 +02:00
Marian Beermann
719a27d6c7
Cache: update add_chunk to use ChunkIndex.add, fix unique count 2016-04-17 00:40:10 +02:00
Marian Beermann
01fac8d7d9 ChunkIndex.add: overwrite current (c)size w/ new values 2016-04-17 00:37:40 +02:00
Marian Beermann
39a40cd7b7
Fix capabilities extraction on Linux
They are extracted correctly, for a little while at least, since chown()
*resets* all capabilities on the chowned file. Which I find curious,
since chown() is a privileged syscall. Probably a safeguard for
sysadmins who are unaware of capabilities.

The solution is to set the xattrs last, after chown()ing files.
2016-04-16 23:52:27 +02:00
Thomas Waldmann
ec930738bf docs: added some insights by "Voltara", fixes #903 2016-04-16 23:27:01 +02:00
Thomas Waldmann
11fdaeaf85 docs: clarify what "deduplicated size" means 2016-04-16 22:35:50 +02:00
Thomas Waldmann
3f474ffabb better readability and less errors with namedtuples, fixes #823 2016-04-16 17:48:47 +02:00
Thomas Waldmann
4de14fdd28 Merge branch '1.0-maint' 2016-04-16 16:58:43 +02:00
Oleg Drokin
ce176b52bf Workround a bug in Linux fadvise FADV_DONTNEED, fixes #907
Despite what the man page says, Linux does not discard the initial
partial page only. The ending page would be truncated no matter if
it is partial or not.
Page-align the fadvise size to take care of this.
Also while we are at it, roll back initial fadvise offset to the
previous page boundary to actually throw away that page as we
no longer need it having read the second part now and the first
time in the previous call.

This patch has a noticeable impact in my Linux testing when the file
is on the rotating media. The total test runtime decreased by a bit
over 10%, but since over half of that time was actually cpu time,
the actual iowait time decreased around 20%.
2016-04-15 20:16:47 -04:00
Marian Beermann
29ebdbadae
refcounting: use uint32_t, protect against overflows, fix merging for BE 2016-04-14 23:38:56 +02:00
Marian Beermann
c90745cdbb Port hashindex_summarize into ChunkIndex.summarize 2016-04-14 11:46:12 +02:00
Danny Edel
60ca65a438 reproducible doc for ProgressIndicator*
building the API docs captured sys.stderr's IO charset, making the build
unreproducible.
2016-04-13 14:54:34 +02:00
Thomas Waldmann
6922452079 compare_content: fix wrong added/removed file size
bug: c[1] was not the size, but the byte at index 1 of the id bytestring!
2016-04-12 03:08:03 +02:00