diff options
author | 2015-07-10 17:07:54 -0400 | |
---|---|---|
committer | 2015-07-10 17:07:54 -0400 | |
commit | 0e1dfc32af1e8b0d40798cda650af168ca4290d0 (patch) | |
tree | e8b0c9f3728b2452a19afe371c94d8192b838c33 /doc | |
parent | 44956f3f6c58b253c188ce12a170a30dbdc06fe1 (diff) | |
parent | 0b0d169c9011500a6e1dd44f5712d7bdca1992b1 (diff) |
Merge branch 'master' into optparse-applicative
Conflicts:
debian/changelog
Diffstat (limited to 'doc')
12 files changed, 535 insertions, 65 deletions
diff --git a/doc/bugs/Interrupted_command_broke_encfs_repository/comment_2_fc57759cfcec0c454ab80ef8e324aa91._comment b/doc/bugs/Interrupted_command_broke_encfs_repository/comment_2_fc57759cfcec0c454ab80ef8e324aa91._comment new file mode 100644 index 000000000..2f1b0e43d --- /dev/null +++ b/doc/bugs/Interrupted_command_broke_encfs_repository/comment_2_fc57759cfcec0c454ab80ef8e324aa91._comment @@ -0,0 +1,15 @@ +[[!comment format=mdwn + username="konubinix" + subject="Thank you for your answer" + date="2015-07-08T19:33:35Z" + content=""" +The filesystem I use is ext4. I don't think the ext4 module of the linux kernel +present on my version of Android would be much different of the one on my +computer. + +Therefore I guess I shall investigate in encfs. It is a pity there is no +alternative allowing to keep a directory encrypted without requiring +administrative privileges. + +Thank you again. +"""]] diff --git a/doc/bugs/high_cpu_usage_in_cat-file_and_webapp.mdwn b/doc/bugs/high_cpu_usage_in_cat-file_and_webapp.mdwn new file mode 100644 index 000000000..d2dd2bbce --- /dev/null +++ b/doc/bugs/high_cpu_usage_in_cat-file_and_webapp.mdwn @@ -0,0 +1,314 @@ +### Please describe the problem. + +I've been running git-annex in the background for a few weeks now (my laptop is at home, occasionally gets suspended, but not for the past few days), and this morning (around 9:30am), I noticed I could hear its fan. Looking at CPU usage in htop, "git-annex webapp" was using ~18% and "git --git-dir=/home/flowblok/annex/.git --work-tree=/home/flowblok/annex -c core.bare=false cat-file --batch" was using ~46%. + +The repository is in direct mode. +It has one remote which it copies to over the network with "annex-rsync-upload-options = --bwlimit 10". +The last fsck ran at 4am, and finished (with one failure, which I can easily recover from) by 4:30am (I guess I should find out why it didn't notify me in any way). + +### What steps will reproduce the problem? + +Not a clue! +Though hopefully I've given enough information below for you to figure out what went wrong: let me know if you need anything else. + +### What version of git-annex are you using? On what operating system? + +Debian Jessie + +$ uname -a +Linux moash 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt9-3~deb8u1 (2015-04-24) x86_64 GNU/Linux + +$ git-annex version +git-annex version: 5.20141125 +build flags: Assistant Webapp Webapp-secure Pairing Testsuite S3 WebDAV Inotify DBus DesktopNotify XMPP DNS Feeds Quvi TDFA CryptoHash +key/value backends: SHA256E SHA1E SHA512E SHA224E SHA384E SKEIN256E SKEIN512E SHA256 SHA1 SHA512 SHA224 SHA384 SKEIN256 SKEIN512 WORM URL +remote types: git gcrypt S3 bup directory rsync web webdav tahoe glacier ddar hook external + +### Please provide any additional information below. + +[[!format sh """ +# strace -p $PIDOF_GIT_CATFILE +open("/home/flowblok/annex/.git/objects/04/13fe78e4f9b37348b5fd03cbe5eabdbcaec068", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=683, ...}) = 0 +mmap(NULL, 683, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +munmap(0x7f9ead5a0000, 683) = 0 +open("/home/flowblok/annex/.git/objects/c0/4c0a1d5b43f82c50cf095e42d28d74f0cfc494", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=132, ...}) = 0 +mmap(NULL, 132, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +munmap(0x7f9ead5a0000, 132) = 0 +brk(0x1b5b000) = 0x1b5b000 +open("/home/flowblok/annex/.git/objects/25/21eb645b1fcac7b6b55551114fe2d69e095896", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=70, ...}) = 0 +mmap(NULL, 70, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +munmap(0x7f9ead5a0000, 70) = 0 +write(1, "2521eb645b1fcac7b6b55551114fe2d6"..., 49) = 49 +open("/home/flowblok/annex/.git/objects/25/21eb645b1fcac7b6b55551114fe2d69e095896", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=70, ...}) = 0 +mmap(NULL, 70, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +munmap(0x7f9ead5a0000, 70) = 0 +open("/home/flowblok/annex/.git/objects/25/21eb645b1fcac7b6b55551114fe2d69e095896", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=70, ...}) = 0 +mmap(NULL, 70, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +write(1, "1435997202.486434s 0 5c33e13f-ed"..., 58) = 58 +munmap(0x7f9ead5a0000, 70) = 0 +write(1, "\n", 1) = 1 +read(0, "refs/heads/git-annex:eec/e95/SHA"..., 4096) = 116 +lstat("/home/flowblok/annex/.git/refs/heads/git-annex", {st_mode=S_IFREG|0600, st_size=41, ...}) = 0 +open("/home/flowblok/annex/.git/refs/heads/git-annex", O_RDONLY) = 3 +read(3, "f9d2dc8d54151d01a27c7989a1fc7983"..., 255) = 41 +read(3, "", 214) = 0 +close(3) = 0 +lstat("/home/flowblok/annex/.git/refs/refs/heads/git-annex", 0x7ffc82e9e580) = -1 ENOENT (No such file or directory) +stat("/home/flowblok/annex/.git/packed-refs", {st_mode=S_IFREG|0600, st_size=1049, ...}) = 0 +lstat("/home/flowblok/annex/.git/refs/tags/refs/heads/git-annex", 0x7ffc82e9e580) = -1 ENOENT (No such file or directory) +stat("/home/flowblok/annex/.git/packed-refs", {st_mode=S_IFREG|0600, st_size=1049, ...}) = 0 +lstat("/home/flowblok/annex/.git/refs/heads/refs/heads/git-annex", 0x7ffc82e9e580) = -1 ENOENT (No such file or directory) +stat("/home/flowblok/annex/.git/packed-refs", {st_mode=S_IFREG|0600, st_size=1049, ...}) = 0 +lstat("/home/flowblok/annex/.git/refs/remotes/refs/heads/git-annex", 0x7ffc82e9e580) = -1 ENOENT (No such file or directory) +stat("/home/flowblok/annex/.git/packed-refs", {st_mode=S_IFREG|0600, st_size=1049, ...}) = 0 +lstat("/home/flowblok/annex/.git/refs/remotes/refs/heads/git-annex/HEAD", 0x7ffc82e9e580) = -1 ENOENT (No such file or directory) +stat("/home/flowblok/annex/.git/packed-refs", {st_mode=S_IFREG|0600, st_size=1049, ...}) = 0 +open("/home/flowblok/annex/.git/objects/f9/d2dc8d54151d01a27c7989a1fc798320034a69", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=207, ...}) = 0 +mmap(NULL, 207, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +munmap(0x7f9ead5a0000, 207) = 0 +open("/home/flowblok/annex/.git/objects/65/dd2889161d7002f1d5f94587ab9bd0746d6f61", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=98827, ...}) = 0 +mmap(NULL, 98827, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ea4c03000 +close(3) = 0 +brk(0x1b81000) = 0x1b81000 +munmap(0x7f9ea4c03000, 98827) = 0 +open("/home/flowblok/annex/.git/objects/d7/bc8b27aad64c59effa77eae026778582761fae", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=550, ...}) = 0 +mmap(NULL, 550, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +munmap(0x7f9ead5a0000, 550) = 0 +open("/home/flowblok/annex/.git/objects/d8/00f4d59828022b9ee556b6f3758832da6bfb71", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=131, ...}) = 0 +mmap(NULL, 131, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +munmap(0x7f9ead5a0000, 131) = 0 +brk(0x1b5b000) = 0x1b5b000 +open("/home/flowblok/annex/.git/objects/ac/9ee326d36283143f9b3b38687870df6a888938", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=71, ...}) = 0 +mmap(NULL, 71, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +munmap(0x7f9ead5a0000, 71) = 0 +write(1, "ac9ee326d36283143f9b3b38687870df"..., 49) = 49 +open("/home/flowblok/annex/.git/objects/ac/9ee326d36283143f9b3b38687870df6a888938", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=71, ...}) = 0 +mmap(NULL, 71, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +munmap(0x7f9ead5a0000, 71) = 0 +open("/home/flowblok/annex/.git/objects/ac/9ee326d36283143f9b3b38687870df6a888938", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=71, ...}) = 0 +mmap(NULL, 71, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +write(1, "1435997292.091244s 0 5c33e13f-ed"..., 58) = 58 +munmap(0x7f9ead5a0000, 71) = 0 +write(1, "\n", 1) = 1 +read(0, "refs/heads/git-annex:c54/719/SHA"..., 4096) = 116 +lstat("/home/flowblok/annex/.git/refs/heads/git-annex", {st_mode=S_IFREG|0600, st_size=41, ...}) = 0 +open("/home/flowblok/annex/.git/refs/heads/git-annex", O_RDONLY) = 3 +read(3, "f9d2dc8d54151d01a27c7989a1fc7983"..., 255) = 41 +read(3, "", 214) = 0 +close(3) = 0 +lstat("/home/flowblok/annex/.git/refs/refs/heads/git-annex", 0x7ffc82e9e580) = -1 ENOENT (No such file or directory) +stat("/home/flowblok/annex/.git/packed-refs", {st_mode=S_IFREG|0600, st_size=1049, ...}) = 0 +lstat("/home/flowblok/annex/.git/refs/tags/refs/heads/git-annex", 0x7ffc82e9e580) = -1 ENOENT (No such file or directory) +stat("/home/flowblok/annex/.git/packed-refs", {st_mode=S_IFREG|0600, st_size=1049, ...}) = 0 +lstat("/home/flowblok/annex/.git/refs/heads/refs/heads/git-annex", 0x7ffc82e9e580) = -1 ENOENT (No such file or directory) +stat("/home/flowblok/annex/.git/packed-refs", {st_mode=S_IFREG|0600, st_size=1049, ...}) = 0 +lstat("/home/flowblok/annex/.git/refs/remotes/refs/heads/git-annex", 0x7ffc82e9e580) = -1 ENOENT (No such file or directory) +stat("/home/flowblok/annex/.git/packed-refs", {st_mode=S_IFREG|0600, st_size=1049, ...}) = 0 +lstat("/home/flowblok/annex/.git/refs/remotes/refs/heads/git-annex/HEAD", 0x7ffc82e9e580) = -1 ENOENT (No such file or directory) +stat("/home/flowblok/annex/.git/packed-refs", {st_mode=S_IFREG|0600, st_size=1049, ...}) = 0 +open("/home/flowblok/annex/.git/objects/f9/d2dc8d54151d01a27c7989a1fc798320034a69", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=207, ...}) = 0 +mmap(NULL, 207, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +munmap(0x7f9ead5a0000, 207) = 0 +open("/home/flowblok/annex/.git/objects/65/dd2889161d7002f1d5f94587ab9bd0746d6f61", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=98827, ...}) = 0 +mmap(NULL, 98827, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ea4c03000 +close(3) = 0 +brk(0x1b81000) = 0x1b81000 +munmap(0x7f9ea4c03000, 98827) = 0 +open("/home/flowblok/annex/.git/objects/04/13fe78e4f9b37348b5fd03cbe5eabdbcaec068", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=683, ...}) = 0 +mmap(NULL, 683, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +munmap(0x7f9ead5a0000, 683) = 0 +open("/home/flowblok/annex/.git/objects/c0/4c0a1d5b43f82c50cf095e42d28d74f0cfc494", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=132, ...}) = 0 +mmap(NULL, 132, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +munmap(0x7f9ead5a0000, 132) = 0 +brk(0x1b5b000) = 0x1b5b000 +open("/home/flowblok/annex/.git/objects/25/21eb645b1fcac7b6b55551114fe2d69e095896", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=70, ...}) = 0 +mmap(NULL, 70, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +munmap(0x7f9ead5a0000, 70) = 0 +write(1, "2521eb645b1fcac7b6b55551114fe2d6"..., 49) = 49 +open("/home/flowblok/annex/.git/objects/25/21eb645b1fcac7b6b55551114fe2d69e095896", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=70, ...}) = 0 +mmap(NULL, 70, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +munmap(0x7f9ead5a0000, 70) = 0 +open("/home/flowblok/annex/.git/objects/25/21eb645b1fcac7b6b55551114fe2d69e095896", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=70, ...}) = 0 +mmap(NULL, 70, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +write(1, "1435997202.486434s 0 5c33e13f-ed"..., 58) = 58 +munmap(0x7f9ead5a0000, 70) = 0 +write(1, "\n", 1) = 1 +read(0, "refs/heads/git-annex:eec/e95/SHA"..., 4096) = 116 +lstat("/home/flowblok/annex/.git/refs/heads/git-annex", {st_mode=S_IFREG|0600, st_size=41, ...}) = 0 +open("/home/flowblok/annex/.git/refs/heads/git-annex", O_RDONLY) = 3 +read(3, "f9d2dc8d54151d01a27c7989a1fc7983"..., 255) = 41 +read(3, "", 214) = 0 +close(3) = 0 +lstat("/home/flowblok/annex/.git/refs/refs/heads/git-annex", 0x7ffc82e9e580) = -1 ENOENT (No such file or directory) +stat("/home/flowblok/annex/.git/packed-refs", {st_mode=S_IFREG|0600, st_size=1049, ...}) = 0 +lstat("/home/flowblok/annex/.git/refs/tags/refs/heads/git-annex", 0x7ffc82e9e580) = -1 ENOENT (No such file or directory) +stat("/home/flowblok/annex/.git/packed-refs", {st_mode=S_IFREG|0600, st_size=1049, ...}) = 0 +lstat("/home/flowblok/annex/.git/refs/heads/refs/heads/git-annex", 0x7ffc82e9e580) = -1 ENOENT (No such file or directory) +stat("/home/flowblok/annex/.git/packed-refs", {st_mode=S_IFREG|0600, st_size=1049, ...}) = 0 +lstat("/home/flowblok/annex/.git/refs/remotes/refs/heads/git-annex", 0x7ffc82e9e580) = -1 ENOENT (No such file or directory) +stat("/home/flowblok/annex/.git/packed-refs", {st_mode=S_IFREG|0600, st_size=1049, ...}) = 0 +lstat("/home/flowblok/annex/.git/refs/remotes/refs/heads/git-annex/HEAD", 0x7ffc82e9e580) = -1 ENOENT (No such file or directory) +stat("/home/flowblok/annex/.git/packed-refs", {st_mode=S_IFREG|0600, st_size=1049, ...}) = 0 +open("/home/flowblok/annex/.git/objects/f9/d2dc8d54151d01a27c7989a1fc798320034a69", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=207, ...}) = 0 +mmap(NULL, 207, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +munmap(0x7f9ead5a0000, 207) = 0 +open("/home/flowblok/annex/.git/objects/65/dd2889161d7002f1d5f94587ab9bd0746d6f61", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=98827, ...}) = 0 +mmap(NULL, 98827, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ea4c03000 +close(3) = 0 +brk(0x1b81000) = 0x1b81000 +munmap(0x7f9ea4c03000, 98827) = 0 +open("/home/flowblok/annex/.git/objects/d7/bc8b27aad64c59effa77eae026778582761fae", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=550, ...}) = 0 +mmap(NULL, 550, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +munmap(0x7f9ead5a0000, 550) = 0 +open("/home/flowblok/annex/.git/objects/d8/00f4d59828022b9ee556b6f3758832da6bfb71", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=131, ...}) = 0 +mmap(NULL, 131, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +munmap(0x7f9ead5a0000, 131) = 0 +brk(0x1b5b000) = 0x1b5b000 +open("/home/flowblok/annex/.git/objects/ac/9ee326d36283143f9b3b38687870df6a888938", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=71, ...}) = 0 +mmap(NULL, 71, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +munmap(0x7f9ead5a0000, 71) = 0 +write(1, "ac9ee326d36283143f9b3b38687870df"..., 49) = 49 +open("/home/flowblok/annex/.git/objects/ac/9ee326d36283143f9b3b38687870df6a888938", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=71, ...}) = 0 +mmap(NULL, 71, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +munmap(0x7f9ead5a0000, 71) = 0 +open("/home/flowblok/annex/.git/objects/ac/9ee326d36283143f9b3b38687870df6a888938", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=71, ...}) = 0 +mmap(NULL, 71, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +write(1, "1435997292.091244s 0 5c33e13f-ed"..., 58) = 58 +munmap(0x7f9ead5a0000, 71) = 0 +write(1, "\n", 1) = 1 +read(0, "refs/heads/git-annex:c54/719/SHA"..., 4096) = 116 +lstat("/home/flowblok/annex/.git/refs/heads/git-annex", {st_mode=S_IFREG|0600, st_size=41, ...}) = 0 +open("/home/flowblok/annex/.git/refs/heads/git-annex", O_RDONLY) = 3 +read(3, "f9d2dc8d54151d01a27c7989a1fc7983"..., 255) = 41 +read(3, "", 214) = 0 +close(3) = 0 +lstat("/home/flowblok/annex/.git/refs/refs/heads/git-annex", 0x7ffc82e9e580) = -1 ENOENT (No such file or directory) +stat("/home/flowblok/annex/.git/packed-refs", {st_mode=S_IFREG|0600, st_size=1049, ...}) = 0 +lstat("/home/flowblok/annex/.git/refs/tags/refs/heads/git-annex", 0x7ffc82e9e580) = -1 ENOENT (No such file or directory) +stat("/home/flowblok/annex/.git/packed-refs", {st_mode=S_IFREG|0600, st_size=1049, ...}) = 0 +lstat("/home/flowblok/annex/.git/refs/heads/refs/heads/git-annex", 0x7ffc82e9e580) = -1 ENOENT (No such file or directory) +stat("/home/flowblok/annex/.git/packed-refs", {st_mode=S_IFREG|0600, st_size=1049, ...}) = 0 +lstat("/home/flowblok/annex/.git/refs/remotes/refs/heads/git-annex", 0x7ffc82e9e580) = -1 ENOENT (No such file or directory) +stat("/home/flowblok/annex/.git/packed-refs", {st_mode=S_IFREG|0600, st_size=1049, ...}) = 0 +lstat("/home/flowblok/annex/.git/refs/remotes/refs/heads/git-annex/HEAD", 0x7ffc82e9e580) = -1 ENOENT (No such file or directory) +stat("/home/flowblok/annex/.git/packed-refs", {st_mode=S_IFREG|0600, st_size=1049, ...}) = 0 +open("/home/flowblok/annex/.git/objects/f9/d2dc8d54151d01a27c7989a1fc798320034a69", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=207, ...}) = 0 +mmap(NULL, 207, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ead5a0000 +close(3) = 0 +munmap(0x7f9ead5a0000, 207) = 0 +open("/home/flowblok/annex/.git/objects/65/dd2889161d7002f1d5f94587ab9bd0746d6f61", O_RDONLY|O_NOATIME) = 3 +fstat(3, {st_mode=S_IFREG|0400, st_size=98827, ...}) = 0 +mmap(NULL, 98827, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f9ea4c03000 +close(3) = 0 +brk(0x1b81000) = 0x1b81000 +munmap(0x7f9ea4c03000, 98827) = 0 +# (truncated, since it just repeats over and over for a total of 613759 lines) + +# strace -p $PIDOF_GITANNEX_WEBAPP +futex(0x417c1dc, FUTEX_WAIT_PRIVATE, 65, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set) +--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_timerid=0, si_overrun=0, si_value={int=0, ptr=0}} --- +rt_sigreturn() = 202 +futex(0x417c1dc, FUTEX_WAIT_PRIVATE, 65, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set) +--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_timerid=0, si_overrun=0, si_value={int=0, ptr=0}} --- +rt_sigreturn() = 202 +futex(0x417c1dc, FUTEX_WAIT_PRIVATE, 65, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set) +--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_timerid=0, si_overrun=0, si_value={int=0, ptr=0}} --- +rt_sigreturn() = 202 +futex(0x417c1dc, FUTEX_WAIT_PRIVATE, 65, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set) +--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_timerid=0, si_overrun=0, si_value={int=0, ptr=0}} --- +rt_sigreturn() = 202 +futex(0x417c1dc, FUTEX_WAIT_PRIVATE, 65, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set) +--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_timerid=0, si_overrun=0, si_value={int=0, ptr=0}} --- +rt_sigreturn() = 202 +futex(0x417c1dc, FUTEX_WAIT_PRIVATE, 65, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set) +--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_timerid=0, si_overrun=0, si_value={int=0, ptr=0}} --- +rt_sigreturn() = 202 +futex(0x417c1dc, FUTEX_WAIT_PRIVATE, 65, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set) +--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_timerid=0, si_overrun=0, si_value={int=0, ptr=0}} --- +rt_sigreturn() = 202 +futex(0x417c1dc, FUTEX_WAIT_PRIVATE, 65, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set) +--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_timerid=0, si_overrun=0, si_value={int=0, ptr=0}} --- +rt_sigreturn() = 202 +futex(0x417c1dc, FUTEX_WAIT_PRIVATE, 65, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set) +--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_timerid=0, si_overrun=0, si_value={int=0, ptr=0}} --- +rt_sigreturn() = 202 +futex(0x417c1dc, FUTEX_WAIT_PRIVATE, 65, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set) +--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_timerid=0, si_overrun=0, si_value={int=0, ptr=0}} --- +rt_sigreturn() = 202 +futex(0x417c1dc, FUTEX_WAIT_PRIVATE, 65, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set) +futex(0x417c1dc, FUTEX_WAIT_PRIVATE, 65, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set) +--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_timerid=0, si_overrun=0, si_value={int=0, ptr=0}} --- +rt_sigreturn() = 202 +futex(0x417c1dc, FUTEX_WAIT_PRIVATE, 65, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set) +--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_timerid=0, si_overrun=0, si_value={int=0, ptr=0}} --- +rt_sigreturn() = 202 +futex(0x417c1dc, FUTEX_WAIT_PRIVATE, 65, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set) +--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_timerid=0, si_overrun=0, si_value={int=0, ptr=0}} --- +rt_sigreturn() = 202 +futex(0x417c1dc, FUTEX_WAIT_PRIVATE, 65, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set) +--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_timerid=0, si_overrun=0, si_value={int=0, ptr=0}} --- +rt_sigreturn() = 202 +futex(0x417c1dc, FUTEX_WAIT_PRIVATE, 65, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set) +--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_timerid=0, si_overrun=0, si_value={int=0, ptr=0}} --- +rt_sigreturn() = 202 +futex(0x417c1dc, FUTEX_WAIT_PRIVATE, 65, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set) +--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_timerid=0, si_overrun=0, si_value={int=0, ptr=0}} --- +rt_sigreturn() = 202 +futex(0x417c1dc, FUTEX_WAIT_PRIVATE, 65, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set) +--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_timerid=0, si_overrun=0, si_value={int=0, ptr=0}} --- +rt_sigreturn() = 202 +futex(0x417c1dc, FUTEX_WAIT_PRIVATE, 65, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set) +--- SIGVTALRM {si_signo=SIGVTALRM, si_code=SI_TIMER, si_timerid=0, si_overrun=0, si_value={int=0, ptr=0}} --- +rt_sigreturn() = 202 +# (ands lots more of the same) +"""]] diff --git a/doc/design/assistant/webapp/comment_5_2bdb436f35c659316193b89ee6e52fcb._comment b/doc/design/assistant/webapp/comment_5_2bdb436f35c659316193b89ee6e52fcb._comment new file mode 100644 index 000000000..b1592af20 --- /dev/null +++ b/doc/design/assistant/webapp/comment_5_2bdb436f35c659316193b89ee6e52fcb._comment @@ -0,0 +1,11 @@ +[[!comment format=mdwn + username="dirk.schmidt@045f26624b94d351628bbb315f94150d627fb18b" + nickname="dirk.schmidt" + subject="Webapp don open" + date="2015-07-08T12:49:01Z" + content=""" +Hey there, +i am using Ubuntu 14.04 +I have disabled all my repositories and now i cannot open the webapp any more. +Any suggestions ? +"""]] diff --git a/doc/devblog/day_297__optparse-applicative.mdwn b/doc/devblog/day_297__optparse-applicative.mdwn new file mode 100644 index 000000000..0885f0db4 --- /dev/null +++ b/doc/devblog/day_297__optparse-applicative.mdwn @@ -0,0 +1,25 @@ +Now working on converting git-annex to use +[optparse-applicative](https://github.com/pcapriotti/optparse-applicative) +for its command line parsing. I've wanted to do this for a long time, +because the current code for options is generally horrible, runs in +IO, and is not at all type safe, while optparse-applicative has wonderful +composable parsers and lets each subcommand have its own data type +repesenting all its options. + +What pushed me over the edge is that optparse-applicative has automatic +bash completion! + + # source <(git-annex --bash-completion-script `which git-annex`) + # git-annex fsck - + --all --key -S + --from --more -U + +Since nobody has managed to write a full bash completion for git-annex +before, let alone keep it up-to-date with changes to the code, automating +the problem away is a really nice win. :) + +The conversion is a rather huge undertaking; the diff is already over 3000 +lines large after 8 hours of work, and I'm maybe 1/3rd done, with +the groundwork laid (except for global options still todo) and a few +subcommands converted. This won't land for this week's release; it'll +need a lot of testing before it'll be ready for any release. diff --git a/doc/forum/MD5_and_MD5E_backends_no_longer_available__63__.mdwn b/doc/forum/MD5_and_MD5E_backends_no_longer_available__63__.mdwn new file mode 100644 index 000000000..9927743d4 --- /dev/null +++ b/doc/forum/MD5_and_MD5E_backends_no_longer_available__63__.mdwn @@ -0,0 +1,5 @@ +I set the backend to MD5E with git config, but when I try to import files I get this error: + + git-annex: unknown backend MD5E + +MD5 doesn't work either. Have these been removed as backend options? They are listed [here](http://git-annex.branchable.com/backends/). diff --git a/doc/forum/Trouble_adding_ssh_remote_using_assistant_on_windows/comment_2_3ec8af32b8148d31aaa3ba781b4dcf89._comment b/doc/forum/Trouble_adding_ssh_remote_using_assistant_on_windows/comment_2_3ec8af32b8148d31aaa3ba781b4dcf89._comment new file mode 100644 index 000000000..c16f7e377 --- /dev/null +++ b/doc/forum/Trouble_adding_ssh_remote_using_assistant_on_windows/comment_2_3ec8af32b8148d31aaa3ba781b4dcf89._comment @@ -0,0 +1,7 @@ +[[!comment format=mdwn + username="acous" + subject="comment 2" + date="2015-07-07T22:25:40Z" + content=""" +Thanks, that did the trick. Am I right to assume that git-remote-gcrypt is not compatible with windows? I have cygwin set up which I could try to install it into, but I expect git-annex-assistant only has access to stuff available from the standard command prompt. +"""]] diff --git a/doc/forum/Use_password_protected_gpg_keypair_without_password_prompt__63__.mdwn b/doc/forum/Use_password_protected_gpg_keypair_without_password_prompt__63__.mdwn new file mode 100644 index 000000000..1ef6345bb --- /dev/null +++ b/doc/forum/Use_password_protected_gpg_keypair_without_password_prompt__63__.mdwn @@ -0,0 +1,7 @@ +Hi. + +I couldn't find a way to pass the passphrase, required to open the gpg keypair for an encrypted special remote, to "git annex sync --content". +I need this for my backup script. Is it possible to use an environment variable or a passphrase file? + +Best regards, +sfowijowa diff --git a/doc/git-annex-unused.mdwn b/doc/git-annex-unused.mdwn index f37b60be0..c29971525 100644 --- a/doc/git-annex-unused.mdwn +++ b/doc/git-annex-unused.mdwn @@ -49,22 +49,25 @@ additions and removals of refs. For example: This adds all refs/heads/ refs, as well as the previous version of HEAD. It also adds all tags, except for old-tag. -This refspec is processed by starting with an empty set of refs, +The refspec is processed by starting with an empty set of refs, and walking the list in order from left to right. -* Each + using a glob is matched against all relevant refs - (a subset of `git show-ref`) and all matching refs are added - to the set. - For example, "+refs/remotes/*" adds all remote refs. -* Each + without a glob adds the literal value to the set. - For example, "+HEAD^" adds "HEAD^". -* Each - is matched against the set of refs accumulated so far. - Any matching refs are removed from the set. -* "reflog" adds all the refs from the reflog. This will make past versions - of files not be considered to be unused until the ref expires from the - reflog (by default for 90 days). Note that this may make git-annex unused - take some time to complete, it if needs to check every ref from the - reflog. +Each + using a glob is matched against all relevant refs +(a subset of `git show-ref`) and all matching refs are added +to the set. +For example, "+refs/remotes/*" adds all remote refs. + +Each + without a glob adds the literal value to the set. +For example, "+HEAD^" adds "HEAD^". + +Each - is matched against the set of refs accumulated so far. +Any matching refs are removed from the set. + +"reflog" adds all the refs from the reflog. This will make past versions +of files not be considered to be unused until the ref expires from the +reflog (by default for 90 days). Note that this may make git-annex unused +take some time to complete, it if needs to check every ref from the +reflog. # SEE ALSO diff --git a/doc/install/fromsource/comment_49_c8370525547b435d963a2c1192a21124._comment b/doc/install/fromsource/comment_49_c8370525547b435d963a2c1192a21124._comment new file mode 100644 index 000000000..c0561861e --- /dev/null +++ b/doc/install/fromsource/comment_49_c8370525547b435d963a2c1192a21124._comment @@ -0,0 +1,93 @@ +[[!comment format=mdwn + username="dave@2ab82f485adf7e2ce787066e35f5f9789bff430b" + nickname="dave" + subject="apt-get build-dep fails" + date="2015-07-09T00:07:32Z" + content=""" + hobbes@namagiri:~/src$ sudo apt-get build-dep git-annex + Reading package lists... Done + Building dependency tree + Reading state information... Done + E: Build-Depends dependency for git-annex cannot be satisfied because the package libghc-hamlet-dev cannot be found + +Hmm, deprecated in favor of libghc-shakespear-dev, according to http://hackage.haskell.org/package/hamlet ... + + hobbes@namagiri:~/src/apt-get-source-git-annex$ grep -iR build-depends.*hamlet|tr , \\n + git-annex_5.20141125.dsc:Build-Depends: debhelper (>= 9) + ghc (>= 7.4) + cabal-install + libghc-mtl-dev (>= 2.1.1) + libghc-missingh-dev + libghc-data-default-dev + libghc-hslogger-dev + libghc-pcre-light-dev + libghc-sha-dev + libghc-cryptohash-dev + libghc-dataenc-dev + libghc-utf8-string-dev + libghc-hs3-dev (>= 0.5.6) + libghc-dav-dev (>= 1.0) [amd64 i386 kfreebsd-amd64 kfreebsd-i386 powerpc] + libghc-quickcheck2-dev + libghc-monad-control-dev (>= 0.3) + libghc-exceptions-dev (>= 0.6) + libghc-transformers-dev + libghc-unix-compat-dev + libghc-dlist-dev + libghc-uuid-dev + libghc-json-dev + libghc-aeson-dev + libghc-ifelse-dev + libghc-bloomfilter-dev + libghc-edit-distance-dev + libghc-hinotify-dev [linux-any] + libghc-stm-dev (>= 2.3) + libghc-dbus-dev (>= 0.10.3) [linux-any] + libghc-fdo-notify-dev (>= 0.3) [linux-any] + libghc-yesod-dev [i386 amd64 kfreebsd-i386 kfreebsd-amd64 powerpc] + libghc-yesod-static-dev [i386 amd64 kfreebsd-i386 kfreebsd-amd64 powerpc] + libghc-yesod-default-dev [i386 amd64 kfreebsd-amd64 powerpc] + libghc-hamlet-dev [i386 amd64 kfreebsd-i386 kfreebsd-amd64 powerpc] + libghc-shakespeare-dev [i386 amd64 kfreebsd-i386 kfreebsd-amd64 powerpc] + libghc-clientsession-dev [i386 amd64 kfreebsd-i386 kfreebsd-amd64 powerpc] + libghc-warp-dev [i386 amd64 kfreebsd-i386 kfreebsd-amd64 powerpc] + libghc-warp-tls-dev [i386 amd64 kfreebsd-i386 kfreebsd-amd64 powerpc] + libghc-wai-dev [i386 amd64 kfreebsd-i386 kfreebsd-amd64 powerpc] + libghc-wai-extra-dev [i386 amd64 kfreebsd-i386 kfreebsd-amd64 powerpc] + libghc-securemem-dev + libghc-byteable-dev + libghc-dns-dev + libghc-case-insensitive-dev + libghc-http-types-dev + libghc-http-conduit-dev + libghc-blaze-builder-dev + libghc-crypto-api-dev + libghc-network-multicast-dev + libghc-network-info-dev [linux-any kfreebsd-any] + libghc-safesemaphore-dev + libghc-network-protocol-xmpp-dev (>= 0.4.3-1+b1) + libghc-gnutls-dev (>= 0.1.4) + libghc-xml-types-dev + libghc-async-dev + libghc-feed-dev (>= 0.3.9.2) + libghc-regex-tdfa-dev [!mipsel !s390] + libghc-regex-compat-dev [mipsel s390] + libghc-tasty-dev (>= 0.7) [!sparc] + libghc-tasty-hunit-dev [!sparc] + libghc-tasty-quickcheck-dev [!sparc] + libghc-tasty-rerun-dev [!sparc] + libghc-optparse-applicative-dev [!sparc] + lsof [!kfreebsd-i386 !kfreebsd-amd64 !hurd-any] + ikiwiki + perlmagick + git (>= 1:2.0) + rsync + wget + curl + openssh-client + git-remote-gcrypt (>= 0.20130908-6) + llvm-3.4 [armel armhf] + +I think that's the bug, right there: *git-annex_5.20141125.dsc*. + +I hope this helps. +"""]] diff --git a/doc/news/version_5.20150508.mdwn b/doc/news/version_5.20150508.mdwn deleted file mode 100644 index 0f3cb8fbb..000000000 --- a/doc/news/version_5.20150508.mdwn +++ /dev/null @@ -1,51 +0,0 @@ -git-annex 5.20150508 released with [[!toggle text="these changes"]] -[[!toggleable text=""" - * Improve behavior when a git-annex command is told to operate - on a file that doesn't exist. It will now continue to other - files specified after that on the command line, and only error out at - the end. - * S3: Enable debug logging when annex.debug or --debug is set. - * S3: git annex info will show additional information about a S3 remote - (endpoint, port, storage class) - * S3: Let git annex enableremote be used, without trying to recreate - a bucket that should already exist. - * S3: Fix incompatability with bucket names used by hS3; the aws library - cannot handle upper-case bucket names. git-annex now converts them to - lower case automatically. - * import: Check for gitignored files before moving them into the tree. - (Needs git 1.8.4 or newer.) - * import: Don't stop entire import when one file fails due to being - gitignored or conflicting with something in the work tree. - * import: Before removing a duplicate file in --deduplicate or - --clean-duplicates mode, verify that enough copies of its content still - exist. - * Improve integration with KDE's file manager to work with dolphin - version 14.12.3 while still being compatable with 4.14.2. - Thanks, silvio. - * assistant: Added --autostop to complement --autostart. - * Work around wget bug #784348 which could cause it to clobber git-annex - symlinks when downloading from ftp. - * Support checking ftp urls for file presence. - * Fix bogus failure of fsck --fast. - * fsck: Ignore error recording the fsck in the activity log, - which can happen when running fsck in a read-only repository. - Closes: #[698559](http://bugs.debian.org/698559) - (fsck can still need to write to the repository if it find problems, - but a successful fsck can be done read-only) - * Improve quvi 0.4 output parsing to handle cases wher there is no known - filename extension. This is currently the case when using quvi with - youtube. In this case, the extension ".m" will be used. - * Dropped support for older versions of yesod, warp, and dbus than the ones - in Debian Jessie. - * Switch from the obsolete dataenc library for base64 encoding to sandi. - (Thanks, Magnus Therning) - * Debian's ghc now supports TH on arm! Adjust build dependencies - to build the webapp on arm, and enable DAV support on arm. \o/ - * Adjust some other arch specific build dependencies that are now - available on more architectures in Devian unstable. - * Windows: Remove cygwin ssh, the newer version of which has stopped - honoring the setting of HOME. Instead, copy msysgit's ssh into PATH. - Note that setting up a remote ssh server using password authentication - is known to be broken in this release on Windows. - * Windows: Roll back to an older version of rsync from cygwin. - The newer version has some dependency on a newer ssh from cygwin."""]]
\ No newline at end of file diff --git a/doc/news/version_5.20150710.mdwn b/doc/news/version_5.20150710.mdwn new file mode 100644 index 000000000..02035fa34 --- /dev/null +++ b/doc/news/version_5.20150710.mdwn @@ -0,0 +1,34 @@ +git-annex 5.20150710 released with [[!toggle text="these changes"]] +[[!toggleable text=""" + * add: Stage symlinks the same as git add would, even if they are not a + link to annexed content. + * sync: When annex.autocommit=false, avoid making any commit of local + changes, while still merging with remote to the extent possible. + * unused: --used-refspec can now be configured to look at refs in the + reflog. This provides a way to not consider old versions of files to be + unused after they have reached a specified age, when the old refs in + the reflog expire. + * log: Fix reversion introduced in version 5.20150528 that broke this command. + * assistant --autostart: First stop any daemons that are already running, + which might be left over from a previous login session and so unable to + use the ssh agent of a new login session. + * assistant: Fix local pairing to not include newline in ssh pubkey, + which is rejected on the other end for security reasons. + * assistant: Fix ANNEX\_SHELL\_DIR written to ~/.ssh/authorized\_keys + in local pairing to be the absolute path to the repository, not "." + This was a reversion caused by the relative path changes in 5.20150113. + * Brought back the setkey plumbing command that was removed in 2011, since + we found a use case for it. Note that the command's syntax was changed + for consistency. + * bugfix: Pass --full-tree when using git ls-files to get a list of files + on the git-annex branch, so it works when run in a subdirectory. + This bug affected git-annex unused, and potentially also transitions + running code and other things. + * Support git's undocumented core.sharedRepository=2 value, which + is equivalent to "world", and is set when a repo was created using + git init --shared=world. + * When building on linux, pass --as-needed to linker to avoid linking + with unused shared libraries including libyaml. + * import: Fix failure of cross-device import on Windows. + * merge: Avoid creating the synced/master branch. + * Removed support for optparse-applicative versions older than 0.10."""]]
\ No newline at end of file diff --git a/doc/tips/Repositories_with_large_number_of_files/comment_1_fac49a6d3f6a18c9925c34521221307d._comment b/doc/tips/Repositories_with_large_number_of_files/comment_1_fac49a6d3f6a18c9925c34521221307d._comment new file mode 100644 index 000000000..42550a064 --- /dev/null +++ b/doc/tips/Repositories_with_large_number_of_files/comment_1_fac49a6d3f6a18c9925c34521221307d._comment @@ -0,0 +1,7 @@ +[[!comment format=mdwn + username="ghen1" + subject="comment 1" + date="2015-07-08T04:08:28Z" + content=""" +This is some excellent information. Thank you. +"""]] |