Commit graph

32760 commits

Author SHA1 Message Date
Joey Hess
401a79675b
run git status before enabling clean filter
Avoids annex.largefiles inconsitency and also avoids a lot of
unneccessary calls to the clean filter when a large repo's clone
is being initialized.

This commit was supported by the NSF-funded DataLad project.
2018-08-28 10:36:22 -04:00
Joey Hess
82b28a8487
devblog 2018-08-27 15:10:16 -04:00
Joey Hess
6adc0d2b3f
bug triage 2018-08-27 15:10:05 -04:00
Joey Hess
10138056dc
v6: avoid accidental conversion when annex.largefiles is not configured
v6: When annex.largefiles is not configured for a file, running git add or
git commit, or otherwise using git to stage a file will add it to the annex
if the file was in the annex before, and to git otherwise. This is to avoid
accidental conversion.

Note that git-annex add's behavior has not changed, for reasons explained
in the added comment.

Performance: No added overhead when annex.largefiles is configured.
When not configured, there is an added call to catObjectMetaData,
which involves a round trip through git cat-file --batch.
However, the earlier catKeyFile primes the cache for it.

This commit was supported by the NSF-funded DataLad project.
2018-08-27 14:51:10 -04:00
Joey Hess
b3dfcd18fe
followup 2018-08-27 13:36:11 -04:00
Joey Hess
8478544b58
analysis, plan
This commit was supported by the NSF-funded DataLad project.
2018-08-27 13:14:34 -04:00
Joey Hess
d7f386a81d
reproduced with current 2018-08-27 12:20:58 -04:00
Joey Hess
d5980b7139
close, this was fixed last week 2018-08-27 12:15:43 -04:00
Joey Hess
4876f412fc
Merge branch 'master' of ssh://git-annex.branchable.com 2018-08-27 10:42:12 -04:00
Joey Hess
2c9f21e987
todo 2018-08-26 20:59:20 -04:00
duncan_bayne
5a90234f47 2018-08-26 02:37:25 +00:00
anarcat
af727108b0 update status to mention tor 2018-08-24 21:35:11 +00:00
anarcat
bfab1da5a7 mention that dat thing 2018-08-24 21:30:20 +00:00
hobbes@b2cacef69071743c3a831e60511062f7e014e52f
d8cd7c1ac4 Added a comment: Building with OpenBSD 2018-08-23 19:30:09 +00:00
Joey Hess
681ed8ea58
devblog 2018-08-22 16:10:27 -04:00
Joey Hess
98fd7ec6c9
recover from race between git mv+commit and git-annex get
Last of the known v6 races.

This also makes git add of a pointer file populate it when its content
is present in the annex. Which makes sense to do, I think.

This commit was supported by the NSF-funded DataLad project.
2018-08-22 16:01:50 -04:00
Joey Hess
50fa17aee6
v6: recover from race between git mv and git-annex get/drop
Update pointer file next time reconcileStaged is run to recover from the
race.

Note that restagePointerFile causes git to run the clean filter,
and that will run reconcileStaged. So, normally by the time the git
annex get/drop command finishes, the race has already been dealt with.
It may be that, in some case, that won't happen and the race will be
dealt with at a later point. git-annex could run reconcileStaged at
shutdown if that becomes a problem.

This does not handle the situation where the git mv is committed before
git-annex gets a chance to run again. git commit does run the clean
filter, and that happens to re-inject the content if it was supposed to
be dropped but is still populated. But, the case where the file was
supposed to be gotten but is not populated is not handled yet.

This commit was supported by the NSF-funded DataLad project.
2018-08-22 15:56:43 -04:00
Joey Hess
9ff1c62a4d
fix race
If a pointer file is being populated and something modifies it at the
same time, there was a race there the modified file's InodeCache
could get added into the keys database.

Note that replaceFile normally renames the temp file into place, so the
inode cache caculated for the temp file will still be good. If it has to
fall back to a copy, the worktree file won't be put in the inode cache.
This has the same result as if the worktree file gets touched, and will
be handled the same way. Eg, when dropping, isUnmodified will do an
expensive comparison and notice that the worktree file does have the
same content, and so drop it.

This commit was supported by the NSF-funded DataLad project.
2018-08-22 15:22:52 -04:00
Joey Hess
e094cf3377
split out modules from Annex.Content 2018-08-22 14:45:53 -04:00
Joey Hess
e9b2674281
plan 2018-08-22 13:58:32 -04:00
Joey Hess
38a934cf07
correction 2018-08-22 13:34:15 -04:00
Joey Hess
18ecf41917
avoid running reconcileStaged when the index has not changed
This commit was supported by the NSF-funded DataLad project.
2018-08-22 13:04:12 -04:00
rajagopal.abhejit@a18fbb434d26431ed70e7fad7bd6a696df2b7d85
65bd018f94 removed 2018-08-22 01:13:45 +00:00
rajagopal.abhejit@a18fbb434d26431ed70e7fad7bd6a696df2b7d85
529b84c5ca removed 2018-08-22 01:11:08 +00:00
rajagopal.abhejit@a18fbb434d26431ed70e7fad7bd6a696df2b7d85
7d0b838153 Added a comment 2018-08-22 01:10:54 +00:00
rajagopal.abhejit@a18fbb434d26431ed70e7fad7bd6a696df2b7d85
0b8759771a Added a comment 2018-08-22 01:10:40 +00:00
andrew@d9c20810619d89ecb4d8ebe187df122112b82fd9
fb5b2f1b7f Added a comment: Not connect to remote as part of initremote? 2018-08-21 23:34:55 +00:00
Joey Hess
5f31aba047
Merge branch 'master' of ssh://git-annex.branchable.com 2018-08-21 17:08:09 -04:00
Joey Hess
cff8eb430d
devblog 2018-08-21 17:07:46 -04:00
Joey Hess
5e56d9b620
v6: Update associated files database when git has staged changes to pointer files
This commit was supported by the NSF-funded DataLad project.
2018-08-21 17:02:20 -04:00
yarikoptic
78ecd6b17a Added a comment 2018-08-21 16:23:05 +00:00
yarikoptic
dae76d8ef3 fixup the trailer 2018-08-21 16:02:25 +00:00
Joey Hess
056b081280
followup 2018-08-21 11:56:51 -04:00
yarikoptic
e009c0efed original filing about web remote listing 2018-08-21 15:09:10 +00:00
Joey Hess
7ee3b02d49
replace stack trace with an explanation 2018-08-20 21:26:07 -04:00
Joey Hess
b8cd5fde17
idea 2018-08-20 16:13:46 -04:00
Joey Hess
c7331eebbf
Merge branch 'master' of ssh://git-annex.branchable.com 2018-08-20 12:21:11 -04:00
Joey Hess
fa44bca8b3
linux standalone: When LOCPATH is already set, use it instead of the bundled locales.
It can be set to an empty string to use the system locales too. Of course
whether that will work depends on the amount of divergence.

This commit was supported by the NSF-funded DataLad project.
2018-08-20 12:20:54 -04:00
emanuele.olivetti@47d88ed185b03191e25329caa6fabc2efb3118b2
f8b4a1f70c 2018-08-20 15:54:11 +00:00
Gus
48fb6f9886 2018-08-17 22:16:45 +00:00
https://launchpad.net/~liori
5d0c336994 Added a comment 2018-08-17 21:58:03 +00:00
Gus
d1eabddee6 2018-08-17 21:44:05 +00:00
Joey Hess
085338a29d
response 2018-08-17 16:18:50 -04:00
Joey Hess
9091d52a1f
close old openbsd build bugs 2018-08-17 16:18:40 -04:00
Joey Hess
59b2ebbaeb
Merge branch 'master' of ssh://git-annex.branchable.com 2018-08-17 16:04:55 -04:00
Joey Hess
ab14d7cd9f
devblog 2018-08-17 16:04:30 -04:00
Joey Hess
54d49eeac8
avoid update-index race
This commit was supported by the NSF-funded DataLad project.
2018-08-17 16:03:40 -04:00
Joey Hess
82c5dd8a01
queueing of internal IO actions on files
This would be better if getInternalFiles were
more polymorphic, but I can't see a good
way to accomplish that without messing with Data.Typeable,
which seemed like overkill.

Reverted CommandAction back to the simpler version.

This commit was sponsored by Eric Drechsel on Patreon.
2018-08-17 13:28:21 -04:00
Joey Hess
c5a8abb130
comment 2018-08-17 13:19:37 -04:00
Joey Hess
ec91b6e4b2
plan to fix race 2018-08-17 11:18:53 -04:00