1
0
Fork 0
mirror of https://github.com/borgbackup/borg.git synced 2024-12-31 20:26:40 +00:00
Commit graph

8619 commits

Author SHA1 Message Date
sothix
f11dc50070 Pip Fix 2024-09-15 23:35:24 +10:00
TW
c278a8e859
Merge pull request #8377 from AfroThundr3007730/AfroThundr3007730/issue8361
Update repository URLs in docs to use new syntax
2024-09-14 13:45:33 +02:00
Eddie Carswell
9fe3cb686f
Update repository URLs in docs to use new syntax
Fixes #8361

Signed-off-by: Eddie Carswell <eddiecarswell13@yahoo.com>
2024-09-11 22:03:59 -05:00
TW
5de5367092
Merge pull request #8364 from ThomasWaldmann/rel200b10
Release 2.0.0 beta 10
2024-09-09 23:25:22 +02:00
Thomas Waldmann
bb31b42310
build_usage build_man 2024-09-09 16:58:06 +02:00
Thomas Waldmann
58fe5ad02a
update CHANGES 2024-09-09 16:51:12 +02:00
TW
64a20cc9d8
Merge pull request #8363 from ThomasWaldmann/remove-config-cmd-docs
remove "borg config" docs
2024-09-09 14:02:35 +02:00
Thomas Waldmann
3ff33684c6
remove "borg config" docs
the config command was already removed before.
2024-09-09 13:42:31 +02:00
TW
00694774fb
Merge pull request #8358 from ThomasWaldmann/repo-commands-rename
repo commands renamed r* -> repo-*
2024-09-09 13:38:38 +02:00
Thomas Waldmann
cfd35b4bd6
update CHANGES 2024-09-09 11:22:38 +02:00
TW
275dabbc23
Merge pull request #8360 from ThomasWaldmann/borgstore-requirement
require borgstore~=0.0.1
2024-09-09 02:13:16 +02:00
Thomas Waldmann
46878c3bd8
require borgstore ~= 0.0.1
so we can do borgstore releases:

- 0.0.x == compatible fixes, would match
- 0.1.0 could be incompatible changes, would not match
2024-09-09 00:51:13 +02:00
Thomas Waldmann
7f1fc0cf63
docs: build_man 2024-09-08 18:11:44 +02:00
Thomas Waldmann
ecb838d5e7
src: fix man page names 2024-09-08 18:11:41 +02:00
Thomas Waldmann
78c7aabbb6
docs: fix usage docs and references for repo-* commands 2024-09-08 18:06:26 +02:00
Thomas Waldmann
04dfadbbd6
cli: rename r* commands to repo-*
also:
- adapt tests
- adapt BuildMan manpage generation
- adapt help strings / doc strings
- docs
2024-09-08 18:06:24 +02:00
Thomas Waldmann
a7bfd4aec8
src: renamed r*_epilog attrs to repo_*_epilog, fixed references 2024-09-08 16:13:43 +02:00
Thomas Waldmann
149ff7541d
src: renamed do_r* methods to do_repo_*, fixed imports 2024-09-08 16:09:41 +02:00
Thomas Waldmann
51d019c1ba
src: renamed build_parser_r* methods to build_parser_repo_*, fixed imports 2024-09-08 16:06:20 +02:00
Thomas Waldmann
4fe6d7fd19
src: renamed R*MixIn archiver classes to Repo*MixIn, fixed imports 2024-09-08 15:37:41 +02:00
Thomas Waldmann
f8d07e7d16
src: renamed r* archiver modules to repo_*, fixed imports 2024-09-08 15:33:11 +02:00
TW
ea08e49210
Merge pull request #8332 from ThomasWaldmann/use-borgstore
use borgstore and other big changes
2024-09-08 15:16:24 +02:00
Thomas Waldmann
3794e32890
--append-only and --storage-quota are not supported (yet?) 2024-09-08 12:32:35 +02:00
Thomas Waldmann
b50ed04ffc
build_usage / build_man 2024-09-08 12:02:17 +02:00
Thomas Waldmann
7442cbf8cf
update CHANGES 2024-09-08 12:01:10 +02:00
Thomas Waldmann
682aedba50
check --repair --undelete-archives: bring archives back from the dead
borg delete and borg prune do a quick and dirty archive deletion,
just removing the archives directory entry for them.

--undelete-archives can still find the archive metadata objects
by completely scanning the repository and re-create missing
archives directory entries.

but only until borg compact would remove all unused data.

if only the manifest is missing or corrupted, do not run that
scan, it is not required for the manifest anymore.
2024-09-08 12:01:06 +02:00
Thomas Waldmann
bc1f90b641
check: do not create addtl. archives dir entries if we already have one
if the manifest file is missing, check generated *.1 *.2 ... archives although an entry for the correct name and id was already
present. BUG!

this is because if the manifest is lost, that does not imply
anymore that the complete archives directory is also lost, as it
did in borg 1.x.

Also improved log messages a bit.
2024-09-08 12:01:05 +02:00
Thomas Waldmann
a509a0c463
locking: no traceback on lock timeout (expected) 2024-09-08 12:01:03 +02:00
Thomas Waldmann
0e183b225d
shared locking for many borg commands
not for check and compact, these need an exclusive lock.

to try parallel repo access on same machine, same user,
one needs to use a non-locking cache implementation:

export BORG_CACHE_IMPL=adhoc

this is slow due the missing files cache in that implementation,
but unproblematic because no caches/indexes are persisted.
2024-09-08 12:01:01 +02:00
Thomas Waldmann
8412168555
check: only write to repo if --repair is given
old borg just didn't commit the transaction and
thus caused a transaction rollback if not in
repair mode.

we can't do that anymore, thus we must avoid
modifying the repo if not in repair mode.
2024-09-08 12:01:00 +02:00
Thomas Waldmann
ef7dd76da1
manifest: no read-modify-write for borgstore archives list
previously, borg always read all archives entries, modified the
list in memory, wrote back to the repository (similar as borg 1.x
did).

now borg works directly with archives/* in the borgstore.
2024-09-08 12:00:58 +02:00
Thomas Waldmann
b56c81bf62
manifest.archives: refactor api
Archives was built with a dictionary-like api,
but in future we want to go away from a
read-modify-write archives list.
2024-09-08 12:00:57 +02:00
Thomas Waldmann
b82ced274f
refactor: move archives related code from Manifest to Archives class 2024-09-08 12:00:54 +02:00
Thomas Waldmann
60e88efa94
repository: catch store backend exception, re-raise as repo exception 2024-09-08 12:00:53 +02:00
Thomas Waldmann
ace97fadec
docs: updates / removing outdated stuff 2024-09-08 12:00:50 +02:00
Thomas Waldmann
b14c050f69
rspace: manage reserved space in repository 2024-09-07 22:05:05 +02:00
Thomas Waldmann
1cd2f4dca3
locking: deal with potential auto-expire during suspend 2024-09-07 22:05:04 +02:00
Thomas Waldmann
7bf0f47fea
check repository: implement --max-duration and checkpoints, fixes #6039 2024-09-07 22:05:02 +02:00
Thomas Waldmann
60a592d50f
with-lock: refresh repo lock while subprocess is running, fixes #8347
otherwise the lock might become stale and could get
killed by any other borg process.

note: ThreadRunner class written by PyCharm AI and
only needed small enhancements. nice.
2024-09-07 22:05:00 +02:00
Thomas Waldmann
dc9fff9953
locking: ignore+delete locks of dead processes 2024-09-07 22:04:58 +02:00
Thomas Waldmann
86dc673649
compact: fix dsize computation if wanted chunks are present in repo 2024-09-07 22:04:56 +02:00
Thomas Waldmann
551834acfc
rcompress: not supported for legacy repos 2024-09-07 22:04:55 +02:00
Thomas Waldmann
e2aa9d56d0
build_chunkindex_from_repo: reduce code duplication 2024-09-07 22:04:53 +02:00
Thomas Waldmann
07ab6e02f4
hashindex types: remove some unused stuff 2024-09-07 22:04:52 +02:00
Thomas Waldmann
15c70397c1
ChunkIndex: remove unused .merge method
LocalCache used this to assemble a new overall chunks index from multiple
chunks.archive.d's single-archive chunks indexes.
2024-09-07 22:04:50 +02:00
Thomas Waldmann
ddf6812703
ChunkIndex: remove .incref method 2024-09-07 22:04:49 +02:00
Thomas Waldmann
ccc84c7a4e
cache: renamed .chunk_incref -> .reuse_chunk, boolean .seen_chunk
reuse_chunk is the complement of add_chunk for already existing chunks.

It doesn't do refcounting anymore.

.seen_chunk does not return the refcount anymore, but just whether the chunk exists.

If we add a new chunk, it immediately sets its refcount to MAX_VALUE, so
there is no difference anymore between previously existing chunks and new
chunks added. This makes the stats even more useless, but we have less complexity.
2024-09-07 22:04:47 +02:00
Thomas Waldmann
f9d2e6827b
ArchiveChecker: don't do precise refcounting here
That's the job of borg compact and not needed inside borg check.
check only needs to know if a chunk is present in the repo.
2024-09-07 22:04:46 +02:00
Thomas Waldmann
e9c42a7d6b
ArchiveChecker: .rebuild_refcounts -> .rebuild_archives 2024-09-07 22:04:44 +02:00
Thomas Waldmann
266e6caa80
ArchiveChecker: remove unused possibly_superseded code
We don't care about unused or superseded repo objects any more here,
borg compact will deal with them.
2024-09-07 22:04:43 +02:00