Commit Graph

838 Commits

Author SHA1 Message Date
TW 562f3c7c33 Merge pull request #72 from ThomasWaldmann/loggedio-exceptions
Loggedio exceptions
2015-06-27 22:17:02 +02:00
Thomas Waldmann 08688fbc13 Merge branch 'master' into loggedio-exceptions
Conflicts:
	borg/repository.py
2015-06-27 22:02:26 +02:00
TW 3303619b5f Merge pull request #69 from ThomasWaldmann/fix-prune-options
the short prune options without "keep-" are deprecated, so do not sug…
2015-06-26 01:19:29 +02:00
TW 6709ec522d Merge pull request #68 from ThomasWaldmann/improve-exit-logging
improve at-end error logging
2015-06-26 00:30:56 +02:00
Thomas Waldmann b92dd1bab2 the short prune options without "keep-" are deprecated, so do not suggest them 2015-06-26 00:04:35 +02:00
Thomas Waldmann 89db9b8b9e improve at-end error logging
always use archiver.print_error, so it goes to sys.stderr

always say "Error: ..." for errors

for rc != 0 always say "Exiting with failure status ..."

catch all exceptions subclassing Exception, so we can log them in same way and set exit_code=1
2015-06-25 23:57:38 +02:00
TW e4c4d458a6 Merge pull request #67 from ThomasWaldmann/zlib-compression-level
borg create --compression 0..9 for variable compression
2015-06-25 22:41:43 +02:00
Thomas Waldmann 6964799d13 borg create --compression 0..9 for variable compression 2015-06-25 22:16:23 +02:00
Thomas Waldmann 2944bbe6c6 update CHANGES 2015-06-21 02:36:22 +02:00
TW a487e16c16 Merge pull request #62 from ThomasWaldmann/chunker-params
Chunker params, fixes #16
2015-06-21 02:11:54 +02:00
Thomas Waldmann 41a37e77db add a misc docs directory, add a usecase for --chunker-params 2015-06-21 02:11:02 +02:00
Thomas Waldmann 54e8dd8419 misc chunker parameter changes
- use power-of-2 sizes / n bit hash mask so one can give them more easily
- chunker api: give seed first, so we can give *chunker_params after it
- fix some tests that aren't possible with 2^N
- make sparse file extraction zero detection flexible for variable chunk max size
2015-06-21 01:46:41 +02:00
TW 44ec86460b Merge pull request #60 from ThomasWaldmann/chunk-counts
determine and report chunk counts in chunks index
2015-06-20 14:32:19 +02:00
Thomas Waldmann 3b9b976f2a borg create --chunker-params=... 2015-06-20 01:20:46 +02:00
Thomas Waldmann 6d0a00496a determine and report chunk counts in chunks index
borg info repo::archive now reports unique chunks count, total chunks count

also: use index->key_size instead of hardcoded value
2015-06-19 23:53:23 +02:00
TW b41b7d06c5 Merge pull request #59 from ThomasWaldmann/fix-no-remote-borg
better Exception msg if there is no Borg installed on the remote repo…
2015-06-18 23:35:56 +02:00
Thomas Waldmann 2743ab1593 better Exception msg if there is no Borg installed on the remote repository server
(still a bit ugly to get even 2 tracebacks)
2015-06-18 23:18:05 +02:00
TW 9eaaaed95b Merge pull request #55 from pguth/patch-1
Update installation.rst
2015-06-15 15:07:54 +02:00
Per Guth e168b41406 Update installation.rst 2015-06-15 14:40:11 +02:00
Per Guth 041357e48a Update installation.rst
Replicated Ubuntus dependency list.
2015-06-15 14:39:04 +02:00
Per Guth 1dc00e7937 Update installation.rst
please test on fresh installation.
2015-06-15 13:09:39 +02:00
Thomas Waldmann 9880ac7ba8 README: mention pytest 2015-06-12 00:11:16 +02:00
Thomas Waldmann 98a015772d forgot to list some 0.23.0 stuff in CHANGES 2015-06-12 00:05:35 +02:00
Thomas Waldmann c7da105fd0 add AUTHORS to MANIFEST.in, so it gets included in releases 2015-06-11 23:04:31 +02:00
Thomas Waldmann a3b5a1beba add first borg release version number to CHANGES 2015-06-11 22:56:53 +02:00
Thomas Waldmann e92d94cb07 rephrase compatibility note 2015-06-11 22:54:33 +02:00
TW f5cb49f09a Merge pull request #52 from ThomasWaldmann/doc-update
Doc update
2015-06-11 22:41:00 +02:00
Thomas Waldmann d1f56d480b update AUTHORS 2015-06-11 22:29:02 +02:00
Thomas Waldmann 21cfdde73b adjust docs theme colours for note divs 2015-06-11 22:26:02 +02:00
Thomas Waldmann dd78e1a56e improve docs, usage help, changelog 2015-06-11 22:18:12 +02:00
TW edd0d491c0 Merge pull request #49 from ThomasWaldmann/improve-internals-docs
improve internals docs
2015-06-10 00:31:25 +02:00
Thomas Waldmann 83f520cfbe improve internals docs 2015-06-07 02:15:13 +02:00
TW c97a353356 Merge pull request #47 from ThomasWaldmann/magic-length
don't hardcode MAGIC length
2015-06-05 23:30:08 +02:00
Thomas Waldmann 614261604e don't hardcode MAGIC length 2015-06-02 02:41:23 +02:00
Thomas Waldmann 3dce75306a LoggedIO: better error checks / exceptions / exception handling
It doesn't just say "error reading segment X", but also what went wrong and at what offset.
2015-06-02 02:30:07 +02:00
TW 8a5ddcfd19 Merge pull request #42 from ThomasWaldmann/micro-opts
Micro opts
2015-05-31 22:08:57 +02:00
Thomas Waldmann 646cdca312 "extract" micro optimization: first check for regular files, then for directories, check for fifos late
regular files are most common, more than directories. fifos are rare.

was no big issue, the calls are cheap, but also no big issue to just fix the order.
2015-05-31 21:55:15 +02:00
Thomas Waldmann ed1e5e9c13 "create" micro optimization: do not check for sockets early
they are rare, so it's pointless to check for them first.

seen the stat..S_ISSOCK in profiling results with high call count.
was no big issue, that call is cheap, but also no big issue to just fix the order.
2015-05-31 21:54:51 +02:00
TW 69371153d1 Merge pull request #33 from ThomasWaldmann/quick-sync
speed up chunks cache sync, fixes #18
2015-05-31 19:27:23 +02:00
Thomas Waldmann a3f4d19515 speed up chunks cache sync, fixes #18
Re-synchronize chunks cache with repository.

If present, uses a compressed tar archive of known backup archive
indices, so it only needs to fetch infos from repo and build a chunk
index once per backup archive.

If out of sync, the tar gets rebuilt from known + fetched chunk infos,
so it has complete and current information about all backup archives.

Finally, it builds the master chunks index by merging all indices from
the tar.

Note: compression (esp. xz) is very effective in keeping the tar
            relatively small compared to the files it contains.

Use python >= 3.3 to get better compression with xz,
there's a fallback to bz2 or gz when xz is not supported.
2015-05-31 19:17:01 +02:00
TW 95744a13dc Merge pull request #40 from ThomasWaldmann/one-memcpy-less
One memcpy less
2015-05-31 19:09:19 +02:00
TW 8d7fe49398 Merge pull request #39 from ThomasWaldmann/master
updates by jborg, more error msg improvements, open in binary mode
2015-05-31 18:47:25 +02:00
Thomas Waldmann 072326fef0 chunker: get rid of read_buf
if we have a OS file handle, we can directly read to the final destination - one memcpy less.
if we have a Python file object, we get a Python bytes object as read result (can't save the memcpy here).
2015-05-31 18:41:23 +02:00
Thomas Waldmann 926454c0d8 explicitely specify binary mode to open binary files
on POSIX OSes, it doesn't make a difference, but it is cleaner and also good for portability.
2015-05-31 17:57:45 +02:00
Thomas Waldmann 776bb9fabc hashindex: improve error messages 2015-05-31 17:48:19 +02:00
Thomas Waldmann 91e10fec5f Merge branch 'master' of github.com:jborg/attic 2015-05-31 17:37:02 +02:00
TW 374fb94aa2 Merge pull request #38 from ThomasWaldmann/fast-list-archives
efficient archive list from manifest, fixes attic #167
2015-05-26 02:16:45 +02:00
Thomas Waldmann d067bc3178 efficient archive list from manifest
a lot of speedup for:
"list <repo>", "delete <repo>" list, "prune" - esp. for slow connections to remote repositories.

the previous method used metadata from the archive itself, which is (in total) rather large.
so if you had many archives and a slow (remote) connection, it was very slow.

but there is a lot easier way: just use the archives list from the repository manifest - we already
have it anyway and it also has name, id and timestamp for all archives - and that's all we need.

I defined a ArchiveInfo namedtuple that has same element names as seen as attribute names
of the Archive object, so as long as name, id, ts is enough, it can be used in its place.
2015-05-26 02:04:41 +02:00
Jonas Borgström 2b348104f6 hashindex: Fix hashindex ARM memory alignment issue
Closes #309
2015-05-24 21:48:03 +02:00
Thomas Waldmann 74409e4fcb Merge github.com:borgbackup/borg 2015-05-23 17:10:45 +02:00