Merge branch 'master' of ssh://git-annex.branchable.com

This commit is contained in:
Joey Hess 2017-11-07 13:48:22 -04:00
commit 2b497a7373
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
4 changed files with 119 additions and 0 deletions

View file

@ -0,0 +1,61 @@
### Please describe the problem.
When adding plenty of files to my git annex repository, I encounter recurring sqlite errors.
### What steps will reproduce the problem?
Create a git annex repo, add thousands of annexed binary files, and add thousands of small files tracked only with git.
### What version of git-annex are you using? On what operating system?
>git annex version
git-annex version: 6.20171003
build flags: Assistant Webapp Pairing Testsuite S3(multipartupload)(storageclasses) WebDAV Inotify DBus DesktopNotify ConcurrentOutput TorrentParser MagicMime Feeds Quvi
dependency versions: aws-0.13.0 bloomfilter-2.0.1.0 cryptonite-0.10 DAV-1.2 feed-0.3.10.4 ghc-7.10.3 http-client-0.4.26.2 persistent-sqlite-2.2 torrent-10000.0.0 uuid-1.3.11 yesod-1.4.2
key/value backends: SHA256E SHA256 SHA512E SHA512 SHA224E SHA224 SHA384E SHA384 SHA3_256E SHA3_256 SHA3_512E SHA3_512 SHA3_224E SHA3_224 SHA3_384E SHA3_384 SKEIN256E SKEIN256 SKEIN512E SKEIN512 SHA1E SHA1 MD5E MD5 WORM URL
remote types: git gcrypt p2p S3 bup directory rsync web bittorrent webdav tahoe glacier ddar hook external
local repository version: 6
supported repository versions: 3 5 6
upgrade supported from repository versions: 0 1 2 3 4 5
operating system: linux x86_64
>lsb_release -d
Description: Ubuntu 16.04.3 LTS
>uname -r
4.4.0-43-Microsoft
#(I am using Bash on Windows.)
### Please provide any additional information below.
# If you can, paste a complete transcript of the problem occurring here.
>git ls-files --others | grep txt | wc -l
1953
>git add $(git ls-files --others | grep txt)
sqlite worker thread crashed: SQLite3 returned ErrorIO while attempting to perform prepare "SELECT null from content limit 1": disk I/O error
git-annex: sqlite query crashed
error: external filter git-annex smudge --clean %f failed 1
error: external filter git-annex smudge --clean %f failed
# [...] plenty of errors follow
>git ls-files --others | grep txt | wc -l
1953
# End of transcript or log.
Triying to solve this problem, I found a part of answer in the form of a similar problem encountered here : <https://git-annex.branchable.com/forum/Problem_with_corrupt_SQLite_DB/>
Deleting git annex databases and running git annex fsck didnt do the trick:
rm -rf .git/annex/keys/db .git/annex/keys/db-wal
git annex fsck --incremental -J4
git add $(git ls-files --others | grep txt)
# Again, plenty of sqlite errors :()
It seems like a big overhead to add files tracked only by git in git annex repo. I know there are hooks/filters that catch and recover annexed files after modification but is it possible to disable these git annex hooks/filters when adding files that shouldn't be annexed ?
### Have you had any luck using git-annex before? (Sometimes we get tired of reading bug reports all day and a lil' positive end note does wonders)
Oh yeah, I am still discovering this powerfull git annex tool.
In fact, collegues and I are forming a group during the process to exchange about different use cases, encountered problems and help each other.

View file

@ -0,0 +1,21 @@
### Please describe the problem.
I have a git-annex repo with lots of images and keep a unlocked v6 branch around to access them. When new files are added (i.e. after running `git annex sync --content`), they are often detected as "modified":
$ git annex status .
M image.jpg
They are however identical to the checked-in files:
$ cp image.jpg image-changed.jpg
$ git checkout -- image.jpg
$ cmp image.jpg image-changed.jpg && echo "No change"
No change
This seems to happen to older files from time to time as well, but I cannot reproduce that.
The only way to rectify this I can find is `git checkout` - but that means I have no way to know whether I am actually throwing away changes. It also has the unfortunate side effect of changing the mtime, leading to previews having to be regenerated.
### What version of git-annex are you using? On what operating system?
git-annex version: 6.20171026-gd451d333d (standalone binary) on Debian stretch.

View file

@ -0,0 +1,8 @@
[[!comment format=mdwn
username="rfourquet"
avatar="http://cdn.libravatar.org/avatar/2c78d7b5b3c6a417e5d666666ec40d51"
subject="comment 3"
date="2017-11-05T12:04:50Z"
content="""
I ran into the same problem: assuming I have a repo at \"/mnt/hd/repo\", then `$ cd /; sudo ln -s /mnt/hd/ .; cd /hd/repo; git annex copy --to=someremote ./some-file` exhibits the problem. Thanks!
"""]]

View file

@ -0,0 +1,29 @@
I came across the following strange behaviour:
$ git annex whereis "2013-WS/ecl/Algorithms for Scoring Coreference Chains.pdf"
whereis 2013-WS/ecl/Algorithms for Scoring Coreference Chains.pdf (4 copies)
04140d86-2ad5-4807-a789-f478dbf477c7 -- [mojzesz]
622fce61-6702-448f-8eee-9a31d8a67e14 -- here
8bb266ed-453d-4489-9d8a-de38b2bc77c2
d8149441-8b4d-4d37-bed4-c0f709165f32 -- [alonzo]
ok
I have no idea what that remote without a name is. Is there a way to find that out?
Plus, it is not shown by
$ git annex info
repository mode: indirect
trusted repositories: 0
semitrusted repositories: 3
04140d86-2ad5-4807-a789-f478dbf477c7 -- [mojzesz]
622fce61-6702-448f-8eee-9a31d8a67e14 -- here
d8149441-8b4d-4d37-bed4-c0f709165f32 -- [alonzo]
untrusted repositories: 4
00000000-0000-0000-0000-000000000001 -- web
00000000-0000-0000-0000-000000000002 -- bittorrent
11d4b299-0170-49b3-8b71-7ea2c47f212b -- nexus5
dd22c018-65f8-4fa7-b880-48616016e272 -- miracle
...
Also, is there a way to mark that remote as dead?