Marian Beermann
ac80332ce7
Merge branch '1.0-maint' into master
...
# Conflicts:
# src/borg/repository.py
# src/borg/testsuite/repository.py
2016-08-14 15:51:49 +02:00
Thomas Waldmann
42b6a838da
fix cyclic import issue, fix tests
...
needed to increase ChunkBuffer size due to increased items stream chunk size
to get the test working.
2016-08-14 15:26:56 +02:00
Thomas Waldmann
8be6761c26
Merge commit 'feb7e2517ef7ec07cc638953a86c726aada7d37e'
2016-08-14 15:05:11 +02:00
TW
c19fb8b921
Merge pull request #1477 from borgbackup/1.0.7rc2rst
...
Fix changes.rst formatting, clarify changelog
2016-08-13 15:18:51 +02:00
enkore
17aacb9719
Fix changes.rst formatting, clarify changelog
2016-08-13 10:18:41 +02:00
TW
4712b9d133
Merge pull request #1474 from ThomasWaldmann/update-1.0-changes
...
update CHANGES
2016-08-13 02:24:32 +02:00
Thomas Waldmann
07b47ef4a5
update CHANGES
2016-08-13 02:23:40 +02:00
TW
a12672530c
Merge pull request #1448 from enkore/issue/1442
...
Fix untracked segments made by moved DELETEs
2016-08-13 02:13:27 +02:00
TW
feb7e2517e
Merge pull request #1472 from ThomasWaldmann/lz4-buffer
...
lz4 reusing helpers.Buffer
2016-08-13 02:13:11 +02:00
TW
df967722e3
Merge pull request #1471 from ThomasWaldmann/buffer
...
refactor buffer code into helpers.Buffer class
2016-08-13 02:02:34 +02:00
Marian Beermann
3b716f98ff
Add regression test for 95cf337
2016-08-13 01:47:51 +02:00
Marian Beermann
95cf337fa5
Fix untracked segments made by moved DELETEs
...
Fixes #1442
(note that the segments _still_ get generated, see the comment, they
should be collected now on the next compaction run)
2016-08-13 01:46:37 +02:00
Thomas Waldmann
e1bc7b62f6
lz4: reuse helpers.Buffer
2016-08-13 01:46:15 +02:00
Thomas Waldmann
ef9e8a584b
refactor buffer code into helpers.Buffer class, add tests
2016-08-13 01:45:23 +02:00
TW
00449ad7b0
Merge pull request #1470 from ThomasWaldmann/document-archive-limit
...
document archive limitation, #1452
2016-08-13 00:12:17 +02:00
TW
4e5b80bbd5
Merge pull request #1464 from ThomasWaldmann/fix-xattr-exception
...
xattr: dynamically grow result buffer until it fits, fixes #1462
2016-08-12 18:21:59 +02:00
Thomas Waldmann
3c7dddcb99
update changelog
2016-08-12 18:00:50 +02:00
Thomas Waldmann
c834b2969c
document archive limitation, #1452
2016-08-12 17:54:15 +02:00
Thomas Waldmann
8630ebf3f0
xattr: fix module docstring
2016-08-12 16:56:19 +02:00
Thomas Waldmann
b6ead3dce2
xattr: use some string processing functions, dedup, simplify
2016-08-12 16:56:19 +02:00
Thomas Waldmann
7ea052a5e8
xattr: buffer full check for freebsd
...
freebsd 10.2:
it does not give rc < 0 and errno == ERANGE if the buffer was too small,
like linux or mac OS X does.
rv == buffer len might be a signal of truncation.
rv > buffer len would be even worse
not sure if some implementation returns the total length of the data,
not just the amount put into the buffer.
but as we use the returned length to "truncate" the buffer, we better
make sure it is not longer than the buffer.
also: freebsd listxattr memoryview len bugfix
2016-08-12 16:56:19 +02:00
Thomas Waldmann
4eac66fe2a
xattr: fix race condition in get_all(), see issue #906
2016-08-12 16:56:19 +02:00
Thomas Waldmann
418794f66f
xattr: errno ERANGE has different meanings
2016-08-12 16:56:19 +02:00
Thomas Waldmann
09dbec99a0
raise OSError including the error message derived from errno
...
also: deal with path being a integer FD
2016-08-12 16:56:19 +02:00
Thomas Waldmann
67c6c1898c
xattr: refactor code, deduplicate
...
this code would be otherwise duplicated 3 times for linux, freebsd, darwin.
2016-08-12 16:56:19 +02:00
Thomas Waldmann
17c77a5dc5
xattr: dynamically grow result buffer until it fits, fixes #1462
...
this also fixes the race condition seen in #1462 because there is only 1 call now.
either it succeeds, then we get the correct length as result and truncate the result value to that length.
or it fails with ERANGE, then we grow the buffer to double size and repeat.
or it fails with some other error, then we throw OSError.
2016-08-12 16:56:19 +02:00
enkore
6bf48bbf67
Merge pull request #1457 from ThomasWaldmann/explain-compat-typeerror
...
explain the confusing TypeError, fixes #1456
2016-08-12 15:16:36 +02:00
TW
32e6507366
Merge pull request #1468 from enkore/issue/1467
...
Print active env var override by default
2016-08-12 14:05:33 +02:00
Marian Beermann
c61a9e8aa0
Print active env var override by default
...
Fixes #1467
2016-08-12 13:00:53 +02:00
enkore
e05258f93f
Merge pull request #1461 from ThomasWaldmann/improve-docs
...
docs: improve prune examples
2016-08-12 12:54:24 +02:00
enkore
f8b2ffe999
Merge pull request #1458 from ThomasWaldmann/merge-1.0-maint
...
Merge 1.0 maint
2016-08-11 14:18:03 +02:00
Thomas Waldmann
6e658a5a6c
docs: improve prune examples
2016-08-10 15:45:57 +02:00
enkore
a951d23d27
Merge pull request #1460 from ThomasWaldmann/fix-init
...
add transaction_id assertion
2016-08-10 14:29:46 +02:00
Thomas Waldmann
7b5772df2d
add transaction_id assertion
...
an acd_cli (amazon cloud drive fuse filesystem) user had "borg init" crash in the line below.
by adding the assertion we tell that we do not expect the transaction_id to be None there,
so it is easier to differentiate from a random coding error.
2016-08-10 13:56:06 +02:00
enkore
e89c5b11b8
Merge pull request #1459 from ThomasWaldmann/larger-items-stream-chunks
...
larger item metadata stream chunks, fixes #1452
2016-08-09 23:37:17 +02:00
enkore
006d1df517
Merge pull request #1450 from enkore/f/recreatefactors
...
minor recreate refactor
2016-08-09 23:28:58 +02:00
Marian Beermann
7d9fba5a41
ArchiveRecreater.copy_items: progress from target instead of source
...
(it produces the same output, just less confusing)
2016-08-09 21:20:13 +02:00
TW
ff5d9a3f12
Merge pull request #1447 from enkore/f/debug-topic
...
Debugging topics and some other minor stuff
2016-08-09 20:53:07 +02:00
Thomas Waldmann
2624d6f818
larger item metadata stream chunks, fixes #1452
...
increasing the mask (target chunk size) from 14 (16kiB) to 17 (128kiB).
this should reduce the amount of item metadata chunks an archive has to reference to 1/8.
this does not completely fix #1452 , but at least enables a 8x larger item metadata stream.
2016-08-09 20:30:50 +02:00
Thomas Waldmann
c955d59273
Merge branch '1.0-maint'
2016-08-09 20:09:13 +02:00
TW
316c0cd6f0
Merge pull request #1455 from ThomasWaldmann/fix-compr-buffer-size
...
LZ4: dynamically enlarge the (de)compression buffer, fixes #1453
2016-08-09 18:36:55 +02:00
TW
4c51bed665
Merge pull request #1454 from ThomasWaldmann/enfore-max-object-size-put
...
repo: do not put objects that we won't get, fixes #1451
2016-08-09 18:17:03 +02:00
Thomas Waldmann
20392f8dd9
repo: split size check into too small and too big
...
also add a hint if somebody needs to restore an archive that has too big objects.
2016-08-09 18:05:22 +02:00
Thomas Waldmann
a360307938
repo: do not put objects that we won't get, fixes #1451
...
we will not get() objects that have a segment entry larger than MAX_OBJECT_SIZE.
thus we should never produce such entries.
also: introduce repository.MAX_DATA_SIZE that gives the max payload size.
2016-08-09 18:05:22 +02:00
Thomas Waldmann
fc92822b6c
explain the confusing TypeError, fixes #1456
2016-08-09 17:35:27 +02:00
Thomas Waldmann
b0e7bb5ddc
fixup: use thread-local buffer
...
start with 0 bytes length (saves memory in case lz4 is not used).
always grow when a bigger buffer is needed.
avoid per-call reallocation / freeing / garbage.
2016-08-09 17:05:24 +02:00
Thomas Waldmann
d3000a7e5d
LZ4: dynamically enlarge the (de)compression buffer, fixes #1453
...
the statically allocated COMPR_BUFFER was right size for chunks,
but not for the archive item which could get larger if you have
many millions of files/dirs.
2016-08-09 02:52:21 +02:00
enkore
51054da692
Merge pull request #1444 from ThomasWaldmann/merge-1.0-maint
...
Merge 1.0 maint
2016-08-08 20:28:35 +02:00
Marian Beermann
0a65e83df3
check --verify-data: remove incorrect help paragraph
...
(since d0ec7e76bb
- doesn't mean this probably useful feature may not
be reimplemented, on the contrary)
2016-08-08 16:38:31 +02:00
Marian Beermann
bec5051ea5
helpers.format_timedelta: use timedelta.total_seconds()
2016-08-08 16:38:31 +02:00