Commit graph

39176 commits

Author SHA1 Message Date
eric.w@eee65cd362d995ced72640c7cfae388ae93a4234
50b200b5e0 2020-12-31 18:51:50 +00:00
Joey Hess
13a1d6eb17
Merge branch 'master' of ssh://git-annex.branchable.com 2020-12-31 13:46:25 -04:00
Lukey
5826c713db Added a comment 2020-12-31 17:32:47 +00:00
eric.w@eee65cd362d995ced72640c7cfae388ae93a4234
2a9eb6609c 2020-12-31 16:58:50 +00:00
Joey Hess
9a3998392e
close import_tree todo
Split out two todos for things that were mentioned as still open items
in there. Most of the others were already dealt with. I didn't open a
new todo for the import from readonly S3 bucket because I guess if
someone needs that, they can ask for it.
2020-12-30 13:40:49 -04:00
Joey Hess
cefbfc678d
document what importKey returning Nothing does
That was added for thirdpartypopulated remotes, but for others it also
has the effect of skipping including the file in the imported tree.
2020-12-30 13:23:16 -04:00
Lukey
c88008beca Added a comment 2020-12-29 23:30:47 +00:00
Joey Hess
92900cb71a
add news item for git-annex 8.20201129 2020-12-29 13:52:34 -04:00
Joey Hess
7d843e909d
releasing package git-annex version 8.20201129 2020-12-29 13:51:40 -04:00
Joey Hess
9f535e1479
update to lts-16.27 2020-12-29 13:51:08 -04:00
Joey Hess
142be24334
update 2020-12-29 12:52:55 -04:00
Joey Hess
70a05c76d3
close 2020-12-29 12:48:21 -04:00
Joey Hess
4f64c08f32
improve tip 2020-12-28 19:38:12 -04:00
Joey Hess
4262ba3c44
Merge branch 'master' of ssh://git-annex.branchable.com 2020-12-28 17:05:00 -04:00
Joey Hess
94b3b8f2d9
update 2020-12-28 17:04:41 -04:00
Joey Hess
d95f647572
tip for probably best use case for borg with git-annex 2020-12-28 17:02:39 -04:00
Joey Hess
e10855e723
don't support dropping from thirdPartyPopulated for now
This code I'm reverting works. But it has a problem: The export db and
log and the ContentIdentifier db and log still list the content as being
stored in the remote. So when I ran borg create again and stored the
content in borg again in a new archive, git-annex sync noticed that, but
since it didn't update the tree for the old archives, it then thought
the content that had been removed from them was still in them, and so
git-annex get failed in an ugly way:

	Include pattern 'tmp/x/.git/annex/objects/pX/ZJ/SHA256E-s0--e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/SHA256E-s0--e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855' never matched.
	[2020-12-28 16:40:44.878952393] process [933616] done ExitFailure 1

	  user error (borg ["extract","/tmp/b::abs4","tmp/x/.git/annex/objects/pX/ZJ/SHA256E-s0--e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/SHA256E-s0--e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"] exited 1)

It does not seem worth it to update the git tree for the export when dropping
content, that would make drop of many files very expensive in git tree objects
created. So, let's not support this I suppose..
2020-12-28 16:48:38 -04:00
Joey Hess
69d4b84501
support removing objects from borg 2020-12-28 16:36:52 -04:00
Joey Hess
bfdaee234f
support removal from thirdPartyPopulated
also some other fixes to thirdPartyPopulated
2020-12-28 16:36:26 -04:00
Joey Hess
b16e6fb4e6
borg appendonly config 2020-12-28 16:23:38 -04:00
Joey Hess
0990d74574
revert recent lockContent change
lockContent should only be done when it's versioned
2020-12-28 16:05:14 -04:00
gb@4a49bb1afcf3d183bba8f07297b0395808768c6c
1ff6499878 Bug report: annex.adjustedbranchrefresh ignored 2020-12-28 20:03:34 +00:00
Joey Hess
36133f27c0
move untrust forcing from Logs.Trust into Remote
No behavior changes here, but this is groundwork for letting remotes
such as borg vary untrust forcing depending on configuration.
2020-12-28 15:22:10 -04:00
Joey Hess
5ce7fce74a
simplify
adjustExportImport' is never called with both isexport and isimport False.
2020-12-28 15:06:47 -04:00
Joey Hess
46059ab0e5
split off versionedExport from appendonly
S3 uses versionedExport, while GitLFS uses appendonly.

This is groundwork for later changes.
2020-12-28 14:37:15 -04:00
AlbertZeyer
5f99217626 2020-12-28 16:31:09 +00:00
AlbertZeyer
4593f002b7 2020-12-28 16:02:24 +00:00
AlbertZeyer
268df65516 2020-12-28 15:50:54 +00:00
AlbertZeyer
5765a9cbc0 2020-12-28 15:46:52 +00:00
AlbertZeyer
b1cd6981f5 2020-12-28 15:33:08 +00:00
Joey Hess
fe4725d66e
switch to createrepo_c
createrepo used python2 and got removed from debian
2020-12-25 16:32:03 -04:00
eric.w@eee65cd362d995ced72640c7cfae388ae93a4234
a83f6075ec removed 2020-12-23 19:57:49 +00:00
Joey Hess
6280af2901
generate more compact git-annex branch for imports
Especially from borg, where the content identifier logs
all end up being the same identical file!

But also, for other imports, the location tracking logs can,
in some cases, be identical files.

Bonus optimisation: Avoid looking up (and parsing when set)
GIT_ANNEX_VECTOR_CLOCK env var every time a log is written to.
Although the lookup does happen at startup even when no
log will be written now.
2020-12-23 15:25:16 -04:00
Joey Hess
f8aadbfb9b
avoid grafting in an imported tree when it's not changed
This just avoids some churn in the git-annex branch.
2020-12-23 14:31:14 -04:00
Joey Hess
7916fc98a3
graft in imported tree to avoid gc
Fix a bug that could prevent getting files from an importtree=yes remote,
because the imported tree was allowed to be garbage collected.
2020-12-23 14:27:38 -04:00
Joey Hess
c6e693b25d
remove ContentIndentifiersCidRemoteIndex uniqueness constraint
For reasons explained in the bug report.

Implemented using a persistent migration, which works fine. It may add a
little startup overhead when a remote is enabled that uses this, but
probably un-noticable.

On the next major version, it would be fine to delete this database,
and regenerate it from the git-annex branch information. Then this
change could be reverted.

Did nothing about adding back the data that got dropped from the db
due to the bug. Only the borg special remote was probably affected,
and it's not been released yet. rm -rf .git/annex/cidsdb does work.
2020-12-23 14:03:33 -04:00
Joey Hess
b370e6b0ad
bug 2020-12-23 13:41:02 -04:00
Joey Hess
2e72590a48
avoid using export method when the remote only supports import 2020-12-23 13:40:56 -04:00
Joey Hess
e3d356fe84
borg: add subdir= config
Note that, after changing it with enableremote, syncing won't rescan
known archives in the borg repo using the changed config. Probably not a
problem?

Also used File in some places where filenames that could theoretically
start with - are passed to borg, to avoid it confusing them with
options.
2020-12-23 13:12:11 -04:00
Joey Hess
1574972ba9
make sync --content get from third-party populated remotes like borg 2020-12-23 12:10:39 -04:00
Joey Hess
d239a55bd1
Merge branch 'master' of ssh://git-annex.branchable.com 2020-12-22 16:55:15 -04:00
Joey Hess
91624f918d
devblog 2020-12-22 16:53:40 -04:00
Joey Hess
79729bcd76
todo 2020-12-22 16:37:19 -04:00
Joey Hess
a2fe994ebb
move unimplemented option to todo 2020-12-22 16:28:13 -04:00
Joey Hess
cd4c68924b
merged borg
Still a couple related todos, but it's basically usable now.
2020-12-22 16:22:44 -04:00
Joey Hess
310d3c3823
Merge branch 'borg' 2020-12-22 16:19:32 -04:00
Joey Hess
2335476e1e
todo 2020-12-22 16:19:02 -04:00
Joey Hess
4254e2297d
implement retrieveExportWithContentIdentifier
Moved out an XXX to a todo

This seems about ready to merge..
2020-12-22 16:16:48 -04:00
Joey Hess
a9d639c5b5
borg can prompt 2020-12-22 15:48:17 -04:00
Joey Hess
df4942e179
notice when an archive that was seen before gets deleted 2020-12-22 15:45:06 -04:00