Commit graph

42116 commits

Author SHA1 Message Date
Joey Hess
b1c49c373a
analysis 2022-07-25 17:03:24 -04:00
Joey Hess
d4b2c4a3fe
comment and fix my incorrect earlier comment 2022-07-25 16:30:22 -04:00
Joey Hess
e551935114
Merge branch 'master' of ssh://git-annex.branchable.com 2022-07-25 16:23:52 -04:00
Joey Hess
0d2e3058ee
handle upgrading repositories initialized with --version=9
There is nothing in upgrade.log because it was never upgraded to version
9. Before, it would have never autoupgraded to 10, but it's entirely
safe to upgrade to 10 immediately.

Of course, annex.autoupgraderepository = false will prevent that
upgrade. So if someone for some reason really wants v9, they can set
that. I can't think of a reason someone would actually want v9 rather
than v10 though.

Sponsored-by: k0ld on Patreon
2022-07-25 16:23:09 -04:00
Joey Hess
63cef2ae0b
v8 repositories automatically upgrade to v9
(And v9 later on to v10.)

When v9/v10 were added, making v8 automatically upgrade was deferred
"for a few months" to prevent interoperability problems if users also
have an old version of git-annex. Of course that could still be the
case, but there has been a good amount of time and this can't be put off
forever.

Allow setting annex.autoupgraderepository to false to avoid this upgrade.
Previously, that only prevented upgrades from no longer supported git-annex
versions, but v8 is still supported, and users may want to keep on v8 to
interoperate with an old git-annex version.

Sponsored-by: Boyd Stephen Smith Jr. on Patreon
2022-07-25 16:20:04 -04:00
Joey Hess
df3020fb7e
avoid writing new line to upgrade.log when upgrade is deferred
With automatic upgrades to v10 enabled, this could have led to each
run of git-annex adding a line to upgrade.log for v9. However,
they're not yet, so it only happened when running git-annex upgrade
in a v9 repository.

Sponsored-by: Brock Spratlen on Patreon
2022-07-25 16:01:48 -04:00
Joey Hess
61b55d62d7
fix logic errors in code that determines if it's time for v10 upgrade
This would have prevented old git-annex from ever upgrading from v9 to
v10. Note that a manual `git-annex upgrade` can never run while the
assistant is running, so not <$> assistantrunning was always True,
so no matter what the timestamp of the v9 upgrade in the log, it would
decide there was old process danger.

Sponsored-by: Jack Hill on Patreon
2022-07-25 15:56:33 -04:00
yarikoptic
afa4f3c3da initial report on hash-object's 2022-07-25 19:17:37 +00:00
yarikoptic
dfa8298f46 Added a comment 2022-07-25 19:03:42 +00:00
Joey Hess
a6ff335f0b
fix build 2022-07-25 14:10:30 -04:00
Joey Hess
0ffb860981
add news item for git-annex 10.20220724 2022-07-25 14:07:37 -04:00
Joey Hess
a0e788c94a
releasing package git-annex version 10.20220724 2022-07-25 14:07:20 -04:00
Joey Hess
05cae5801a
comment 2022-07-25 12:54:31 -04:00
Joey Hess
7f77405f60
comment 2022-07-25 12:50:56 -04:00
Joey Hess
7e4ee80e9a
comment 2022-07-25 12:35:58 -04:00
arnaud@c1d1cc612a3921dc06a417301be08a3e125478c4
43898dfbcd Added a comment 2022-07-25 07:52:39 +00:00
arnaud@c1d1cc612a3921dc06a417301be08a3e125478c4
8415f285b8 removed 2022-07-25 07:20:13 +00:00
yarikoptic
b40ac7af3d Added a comment 2022-07-24 16:52:33 +00:00
arnaud@c1d1cc612a3921dc06a417301be08a3e125478c4
c0eac8cce6 Added a comment 2022-07-24 16:16:35 +00:00
arnaud@c1d1cc612a3921dc06a417301be08a3e125478c4
3486a4d370 2022-07-23 15:24:06 +00:00
arnaud@c1d1cc612a3921dc06a417301be08a3e125478c4
be2d1ab18d Added a comment 2022-07-23 08:48:17 +00:00
drunken_sapo
0e43461ea2 Added a comment: Confirmed your suspiction 2022-07-23 02:28:18 +00:00
Atemu
d73b2d307c Added a comment 2022-07-22 23:47:19 +00:00
Joey Hess
e1de941b2c
close git bug that I reported to git mailing list 2022-07-22 13:24:24 -04:00
Joey Hess
591e87f1f2
reproduced 2022-07-22 12:24:42 -04:00
Joey Hess
162c8cdec0
comment 2022-07-22 11:59:15 -04:00
Joey Hess
2de61f2e5a
comment 2022-07-22 11:38:33 -04:00
Joey Hess
fda32fee3f
Merge branch 'master' of ssh://git-annex.branchable.com 2022-07-22 11:37:35 -04:00
Joey Hess
cbe12b9bc3
force fully strict read of journal file again
I was thinking that discardIncompleteAppend would make it strict, since
it looks at the end of the bytestring. But, it's applied lazily..

This probably fixes windows, which was failing:

      git-annex.exe: .git\annex\journal\trust.log: DeleteFile "\\\\?\\C:\\Users\\runneradmin\\.t\\5\\tmprepo22\\.git\\annex\\journal\\trust.log": permission denied (The process cannot access the file because it is being used by another process.)
2022-07-22 11:36:21 -04:00
jkniiv
3d105f44bb Added a comment 2022-07-21 20:08:55 +00:00
yarikoptic
152f82796a Added a comment 2022-07-21 14:03:56 +00:00
arnaud@c1d1cc612a3921dc06a417301be08a3e125478c4
113ccfcc32 Added a comment: Happens only when core.untrackedCache=true 2022-07-21 08:23:04 +00:00
Joey Hess
27e0108097
comment 2022-07-20 13:51:26 -04:00
Joey Hess
03ce01dcf9
comment 2022-07-20 13:44:24 -04:00
Joey Hess
8b4f7af605
Merge branch 'master' of ssh://git-annex.branchable.com 2022-07-20 13:34:37 -04:00
Joey Hess
a0746d2027
fixed 2022-07-20 13:32:26 -04:00
Joey Hess
05b96a1acf
Merge branch 'append' 2022-07-20 13:24:04 -04:00
Joey Hess
4e88137a28
prevent appends except when annex.alwayscompact=false
I would like for a new repo version to enable appends, but to do so
safely would need a v11 followed by a 1 year delay followed by a v12
that does it. Since a similar v9 and v10 transition is currently
happening, and is less than 6 months along in most repos, it does not
feel wise to stack up another year-long transition behind that. What if
I need to hurry up a new repo version for some other change?

Added todo so I remember to make this change at some time when a v11
and probably v12 repo version do make sense.

Sponsored-by: Dartmouth College's DANDI project
2022-07-20 13:23:55 -04:00
Joey Hess
d275874e6c
handling of interrupted appends
An append that is interrupted and writes part of a line is now dealt
with by subsequent reads and appends. This also handles a read that
happens at the same time as an append to the file.

Old versions of git-annex will still see a partially written line,
and could get confused. Since appends are currently done for url logs
and location logs, the confusion is limited to a substring of the actual
url or UUID of the remote being read. This will not affect writes, since
the journal file is locked when reading in preparation for writing.
However, the bad data can be output by git-annex and used by other
things, or could cause surprising behavior by git-annex. Including eg,
downloading the content of the wrong url.

So, something needs to be done to prevent old versions of git-annex from
running in a repository where this appending is being done..

Sponsored-by: Dartmouth College's DANDI project
2022-07-20 12:40:49 -04:00
Joey Hess
6f1fd3abdd
no locking of journal on read after all
Finally have a final design, and it turns out not to need locking on read.
2022-07-20 10:57:28 -04:00
Joey Hess
c933b0074f
comment 2022-07-19 18:10:45 -04:00
yarikoptic
78642ededb Added a comment 2022-07-19 21:29:02 +00:00
Joey Hess
d832a7c211
thoughts 2022-07-19 15:45:08 -04:00
akspecs@fae4f3d58a0c6c9d50f01a850ce53d425e1a90ba
d23c281856 Added a comment: cannot reproduce 2022-07-19 12:53:46 +00:00
arnaud@c1d1cc612a3921dc06a417301be08a3e125478c4
b566ef839e 2022-07-19 11:22:26 +00:00
daven.quinn@d0ed4e0e5e4462d9a74a5d5a8fbd1b17f85db13e
0568fc872d 2022-07-19 07:57:37 +00:00
Joey Hess
fd6e01d9b6
comment 2022-07-18 17:02:41 -04:00
Joey Hess
2cb634c373
comment 2022-07-18 16:56:31 -04:00
Joey Hess
71b4a6ba26
Merge branch 'master' into append 2022-07-18 16:46:01 -04:00
Joey Hess
d0860b7f0e
fix build
After 28b0aaea54
2022-07-18 16:44:32 -04:00