From 64d172d6ccadcea7dae50aac6688d22606820b0b Mon Sep 17 00:00:00 2001 From: "https://www.google.com/accounts/o8/id?id=AItOawldTFGlKsKUyq6F6CJ22CNBnmYJ0LQbLUQ" Date: Wed, 18 Feb 2015 06:58:59 +0000 Subject: [PATCH 01/21] Added a comment --- ...mment_3_f0a2ec3d0b05d84fb05a1708313a6762._comment | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 doc/forum/What_happens_after_terminated_add_of_huge_picture_folder__63__/comment_3_f0a2ec3d0b05d84fb05a1708313a6762._comment diff --git a/doc/forum/What_happens_after_terminated_add_of_huge_picture_folder__63__/comment_3_f0a2ec3d0b05d84fb05a1708313a6762._comment b/doc/forum/What_happens_after_terminated_add_of_huge_picture_folder__63__/comment_3_f0a2ec3d0b05d84fb05a1708313a6762._comment new file mode 100644 index 0000000000..d06b509651 --- /dev/null +++ b/doc/forum/What_happens_after_terminated_add_of_huge_picture_folder__63__/comment_3_f0a2ec3d0b05d84fb05a1708313a6762._comment @@ -0,0 +1,12 @@ +[[!comment format=mdwn + username="https://www.google.com/accounts/o8/id?id=AItOawldTFGlKsKUyq6F6CJ22CNBnmYJ0LQbLUQ" + nickname="Rolandas" + subject="comment 3" + date="2015-02-18T06:58:59Z" + content=""" +Jes, it was an entirely new git repo and I removed .git folder and start over.
+The question was is there some sort of „UNDO“ in this case.
+I get it now.
+I will read internals documentation.
+Thank You very much!
+"""]] From a3bda4dca0657166f0846528539353401313eb29 Mon Sep 17 00:00:00 2001 From: "https://www.google.com/accounts/o8/id?id=AItOawlmLuHhscJsoAqb9q0N3LdtHum6LjY1LK4" Date: Wed, 18 Feb 2015 12:14:26 +0000 Subject: [PATCH 02/21] Added a comment --- ..._3cd2c0ce36a85ad05c5ee7cd63ef98cd._comment | 261 ++++++++++++++++++ 1 file changed, 261 insertions(+) create mode 100644 doc/bugs/git-annex_on_NAS_eats_all_memory/comment_8_3cd2c0ce36a85ad05c5ee7cd63ef98cd._comment diff --git a/doc/bugs/git-annex_on_NAS_eats_all_memory/comment_8_3cd2c0ce36a85ad05c5ee7cd63ef98cd._comment b/doc/bugs/git-annex_on_NAS_eats_all_memory/comment_8_3cd2c0ce36a85ad05c5ee7cd63ef98cd._comment new file mode 100644 index 0000000000..4a94065a55 --- /dev/null +++ b/doc/bugs/git-annex_on_NAS_eats_all_memory/comment_8_3cd2c0ce36a85ad05c5ee7cd63ef98cd._comment @@ -0,0 +1,261 @@ +[[!comment format=mdwn + username="https://www.google.com/accounts/o8/id?id=AItOawlmLuHhscJsoAqb9q0N3LdtHum6LjY1LK4" + nickname="Markus" + subject="comment 8" + date="2015-02-18T12:14:26Z" + content=""" +I diffed the strace when running locally and per git-annex sync: +The traces are 100% equal for the first ~480 calls and then they start to differ: + +git annex sync from laptop: + +mprotect(0x2b1e2000, 8192, PROT_READ) = 0 +mprotect(0x2aafb000, 4096, PROT_READ) = 0 +mprotect(0x2b24e000, 4096, PROT_READ) = 0 +mprotect(0x2aca5000, 4096, PROT_READ) = 0 +mprotect(0x2ad6d000, 4096, PROT_READ) = 0 +mprotect(0x2b21f000, 4096, PROT_READ) = 0 +mprotect(0x2acdd000, 4096, PROT_READ) = 0 +mprotect(0x2ac24000, 4096, PROT_READ) = 0 +mprotect(0x2aae5000, 4096, PROT_READ) = 0 +mprotect(0x2ad27000, 20480, PROT_READ) = 0 +mprotect(0x2acbd000, 4096, PROT_READ) = 0 +mprotect(0x2b0a0000, 4096, PROT_READ) = 0 +mprotect(0x2ab55000, 4096, PROT_READ) = 0 +mprotect(0x2aacd000, 4096, PROT_READ) = 0 +mprotect(0x2ab32000, 4096, PROT_READ) = 0 +mprotect(0x2afeb000, 16384, PROT_READ) = 0 +mprotect(0x2aeaf000, 20480, PROT_READ) = 0 +mprotect(0x2abfd000, 4096, PROT_READ) = 0 +mprotect(0x2ada4000, 4096, PROT_READ) = 0 +mprotect(0x2abbc000, 4096, PROT_READ) = 0 +set_tid_address(0x2ac28068) = 18015 +set_robust_list(0x2ac28070, 0xc) = 0 +rt_sigaction(SIGRTMIN, {0x2ac04550, [], SA_SIGINFO|0x4000000}, NULL, 8) = 0 +rt_sigaction(SIGRT_1, {0x2ac043e4, [], SA_RESTART|SA_SIGINFO|0x4000000}, NULL, 8) = 0 +rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0 +getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0 +futex(0x2ad2cc44, FUTEX_WAKE_PRIVATE, 2147483647) = 0 +brk(0) = 0x2bf15000 +brk(0x2bf36000) = 0x2bf36000 +open(\"/dev/urandom\", O_RDONLY|O_LARGEFILE) = 3 +fcntl64(3, F_GETFD) = 0 +fcntl64(3, F_SETFD, FD_CLOEXEC) = 0 +fstat64(3, {st_mode=S_IFCHR|0666, st_rdev=makedev(1, 9), ...}) = 0 +clock_gettime(CLOCK_REALTIME, {1424257023, 820788195}) = 0 +getrusage(0x1 /* RUSAGE_??? */, {ru_utime={0, 20000}, ru_stime={0, 10000}, ...}) = 0 +read(3, \"yx$\17\207\4\364\233\366\361\210[,\334(\214\\"\343\226\2'd\303\24\306\254\323\363\2523\36\2\", 32) = 32 +read(3, \"\243e\370\36n\320@l\345\27\6/\323%5`2\355\355B\", 8) = 8 +clock_getres(0x2 /* CLOCK_??? */, {0, 1}) = 0 +clock_gettime(0x2 /* CLOCK_??? */, {0, 44157400}) = 0 +clock_gettime(CLOCK_MONOTONIC, {438775, 660164522}) = 0 +brk(0x2bf57000) = 0x2bf57000 +mmap2(NULL, 2097152, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b250000 +munmap(0x2b250000, 720896) = 0 +munmap(0x2b400000, 327680) = 0 +timer_create(CLOCK_MONOTONIC, {0, SIGVTALRM, SIGEV_SIGNAL, {...}}, {0x1}) = 0 +rt_sigaction(SIGVTALRM, {0x3cc4e08, [], SA_RESTART|0x4000000}, NULL, 8) = 0 +timer_settime(0x1, 0, {it_interval={0, 10000000}, it_value={0, 10000000}}, NULL) = 0 +rt_sigaction(SIGINT, {0x3cce17c, [], 0x4000000 /* SA_??? */}, {SIG_DFL, [], 0}, 8) = 0 +rt_sigaction(SIGINT, NULL, {0x3cce17c, [], 0x4000000 /* SA_??? */}, 8) = 0 +rt_sigaction(SIGINT, {0x3cce17c, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 +rt_sigaction(SIGPIPE, {0x3cce0b4, [], 0x4000000 /* SA_??? */}, {SIG_DFL, [], 0}, 8) = 0 +rt_sigaction(SIGTSTP, {0x3cce1c0, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 +epoll_create(0x100) = 4 +fcntl64(4, F_SETFD, FD_CLOEXEC) = 0 +pipe([5, 6]) = 0 +fcntl64(6, F_GETFL) = 0x1 (flags O_WRONLY) +fcntl64(6, F_SETFL, O_WRONLY|O_NONBLOCK) = 0 +fcntl64(5, F_SETFD, FD_CLOEXEC) = 0 +fcntl64(6, F_SETFD, FD_CLOEXEC) = 0 +mmap2(NULL, 8388608, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS|0x20000, -1, 0) = 0x2b400000 +mprotect(0x2b400000, 4096, PROT_NONE) = 0 +clone(child_stack=0x2bbfef98, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x2bbff4c8, tls=0x2bbff920, child_tidptr=0x2bbff4c8) = 18039 +futex(0x2bf3aa6c, FUTEX_WAIT_PRIVATE, 1, NULL) = 0 +futex(0x2bf3aa98, FUTEX_WAIT_PRIVATE, 2, NULL) = 0 +futex(0x2bf3aa98, FUTEX_WAKE_PRIVATE, 1) = 0 +futex(0x41981d0, FUTEX_WAIT_PRIVATE, 2, NULL) = 0 +futex(0x41981d0, FUTEX_WAKE_PRIVATE, 1) = 0 +eventfd2(0, 0) = 7 +fcntl64(7, F_GETFL) = 0x2 (flags O_RDWR) +fcntl64(7, F_SETFL, O_RDWR|O_NONBLOCK) = 0 +fcntl64(7, F_SETFD, FD_CLOEXEC) = 0 +epoll_ctl(0x4, 0x1, 0x5, 0x2b304430) = 0 +epoll_ctl(0x4, 0x1, 0x7, 0x2b304448) = 0 +clock_gettime(0x2 /* CLOCK_??? */, {0, 46001320}) = 0 +clock_gettime(CLOCK_MONOTONIC, {438775, 665190920}) = 0 +futex(0x2bf3aa6c, FUTEX_WAIT_PRIVATE, 3, NULL) = 0 +futex(0x2bf3aa98, FUTEX_WAIT_PRIVATE, 2, NULL) = 0 +futex(0x2bf3aa98, FUTEX_WAKE_PRIVATE, 1) = 0 +futex(0x41981d0, FUTEX_WAIT_PRIVATE, 2, NULL) = 0 +futex(0x41981d0, FUTEX_WAKE_PRIVATE, 1) = 0 +rt_sigprocmask(SIG_BLOCK, [INT], [], 8) = 0 +rt_sigaction(SIGINT, {0x3cce0b8, [], SA_RESETHAND|SA_SIGINFO|0x4000000}, NULL, 8) = 0 +rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 +open(\"/usr/lib/arm-linux-gnueabi/gconv/gconv-modules.cache\", O_RDONLY) = -1 ENOENT (No such file or directory) +open(\"/usr/lib/arm-linux-gnueabi/gconv/gconv-modules\", O_RDONLY|0x80000) = -1 ENOENT (No such file or directory) +futex(0x2b1e4ef4, FUTEX_WAKE_PRIVATE, 2147483647) = 0 +--- SIGVTALRM (Virtual timer expired) @ 0 (0) --- +sigreturn() = ? (mask now [TRAP FPE KILL SEGV USR2 TERM STKFLT CHLD CONT TSTP TTIN TTOU XCPU VTALRM WINCH PWR]) +--- SIGVTALRM (Virtual timer expired) @ 0 (0) --- +sigreturn() = ? (mask now [TRAP FPE KILL SEGV USR2 TERM STKFLT CHLD CONT TSTP TTIN TTOU XCPU VTALRM WINCH PWR]) +--- SIGVTALRM (Virtual timer expired) @ 0 (0) --- +sigreturn() + +looping endlessly from there on + +running on nas directly: +mprotect(0x2b0dc000, 8192, PROT_READ) = 0 +mprotect(0x2ae4a000, 4096, PROT_READ) = 0 +mprotect(0x2b241000, 4096, PROT_READ) = 0 +mprotect(0x2aee9000, 4096, PROT_READ) = 0 +mprotect(0x2b19e000, 4096, PROT_READ) = 0 +mprotect(0x2b1d7000, 4096, PROT_READ) = 0 +mprotect(0x2b15c000, 4096, PROT_READ) = 0 +mprotect(0x2ae71000, 4096, PROT_READ) = 0 +mprotect(0x2ab70000, 4096, PROT_READ) = 0 +mprotect(0x2b138000, 20480, PROT_READ) = 0 +mprotect(0x2b0f8000, 4096, PROT_READ) = 0 +mprotect(0x2af9a000, 4096, PROT_READ) = 0 +mprotect(0x2ab57000, 4096, PROT_READ) = 0 +mprotect(0x2ab3a000, 4096, PROT_READ) = 0 +mprotect(0x2ab1b000, 4096, PROT_READ) = 0 +mprotect(0x2ae33000, 16384, PROT_READ) = 0 +mprotect(0x2acf7000, 20480, PROT_READ) = 0 +mprotect(0x2abec000, 4096, PROT_READ) = 0 +mprotect(0x2abab000, 4096, PROT_READ) = 0 +mprotect(0x2aaf3000, 4096, PROT_READ) = 0 +set_tid_address(0x2b2a8068) = 18072 +set_robust_list(0x2b2a8070, 0xc) = 0 +rt_sigaction(SIGRTMIN, {0x2ae51550, [], SA_SIGINFO|0x4000000}, NULL, 8) = 0 +rt_sigaction(SIGRT_1, {0x2ae513e4, [], SA_RESTART|SA_SIGINFO|0x4000000}, NULL, 8) = 0 +rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0 +getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0 +futex(0x2b13dc44, FUTEX_WAKE_PRIVATE, 2147483647) = 0 +brk(0) = 0x2ca10000 +brk(0x2ca31000) = 0x2ca31000 +open(\"/dev/urandom\", O_RDONLY|O_LARGEFILE) = 3 +fcntl64(3, F_GETFD) = 0 +fcntl64(3, F_SETFD, FD_CLOEXEC) = 0 +fstat64(3, {st_mode=S_IFCHR|0666, st_rdev=makedev(1, 9), ...}) = 0 +clock_gettime(CLOCK_REALTIME, {1424257086, 456931329}) = 0 +getrusage(0x1 /* RUSAGE_??? */, {ru_utime={0, 20000}, ru_stime={0, 0}, ...}) = 0 +read(3, \"l\36K\322\231Ud\302.\335\301dhC)A\260\374~\350\254\341-\267\215\300\313\334\215XqI\", 32) = 32 +read(3, \"\25017J\372\361^\374\254\347$\f=Ag)\10r\25\317r]\216\337G\371M\27\321\326\0(\", 32) = 32 +read(3, \"\245\271\251\373\270\350S1\", 8) = 8 +open(\"/usr/lib/locale/locale-archive\", O_RDONLY|O_LARGEFILE|0x80000) = 4 +fstat64(4, {st_mode=S_IFREG|0644, st_size=14362288, ...}) = 0 +mmap2(NULL, 2097152, PROT_READ, MAP_PRIVATE, 4, 0) = 0x2b36b000 +close(4) = 0 +clock_getres(0x2 /* CLOCK_??? */, {0, 1}) = 0 +clock_gettime(0x2 /* CLOCK_??? */, {0, 29204680}) = 0 +clock_gettime(CLOCK_MONOTONIC, {438838, 301653485}) = 0 +brk(0x2ca52000) = 0x2ca52000 +mmap2(NULL, 2097152, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b579000 +munmap(0x2b579000, 552960) = 0 +munmap(0x2b700000, 495616) = 0 +timer_create(CLOCK_MONOTONIC, {0, SIGVTALRM, SIGEV_SIGNAL, {...}}, {0x2}) = 0 +rt_sigaction(SIGVTALRM, {0x3cc4e08, [], SA_RESTART|0x4000000}, NULL, 8) = 0 +timer_settime(0x2, 0, {it_interval={0, 10000000}, it_value={0, 10000000}}, NULL) = 0 +rt_sigaction(SIGINT, {0x3cce17c, [], 0x4000000 /* SA_??? */}, {SIG_DFL, [], 0}, 8) = 0 +rt_sigaction(SIGINT, NULL, {0x3cce17c, [], 0x4000000 /* SA_??? */}, 8) = 0 +rt_sigaction(SIGINT, {0x3cce17c, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 +rt_sigaction(SIGPIPE, {0x3cce0b4, [], 0x4000000 /* SA_??? */}, {SIG_DFL, [], 0}, 8) = 0 +rt_sigaction(SIGTSTP, {0x3cce1c0, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 +epoll_create(0x100) = 4 +fcntl64(4, F_SETFD, FD_CLOEXEC) = 0 +pipe([5, 6]) = 0 +fcntl64(6, F_GETFL) = 0x1 (flags O_WRONLY) +fcntl64(6, F_SETFL, O_WRONLY|O_NONBLOCK) = 0 +fcntl64(5, F_SETFD, FD_CLOEXEC) = 0 +fcntl64(6, F_SETFD, FD_CLOEXEC) = 0 +mmap2(NULL, 8388608, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS|0x20000, -1, 0) = 0x2b700000 +mprotect(0x2b700000, 4096, PROT_NONE) = 0 +clone(child_stack=0x2befef98, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x2beff4c8, tls=0x2beff920, child_tidptr=0x2beff4c8) = 18073 +futex(0x2ca36264, FUTEX_WAIT_PRIVATE, 1, NULL) = 0 +futex(0x2ca36290, FUTEX_WAKE_PRIVATE, 1) = 0 +eventfd2(0, 0) = 7 +fcntl64(7, F_GETFL) = 0x2 (flags O_RDWR) +fcntl64(7, F_SETFL, O_RDWR|O_NONBLOCK) = 0 +fcntl64(7, F_SETFD, FD_CLOEXEC) = 0 +epoll_ctl(0x4, 0x1, 0x5, 0x2b604430) = 0 +epoll_ctl(0x4, 0x1, 0x7, 0x2b604448) = 0 +futex(0x2ca36314, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x2ca36310, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1 +clock_gettime(0x2 /* CLOCK_??? */, {0, 31248840}) = 0 +clock_gettime(CLOCK_MONOTONIC, {438838, 311493486}) = 0 +futex(0x2ca36264, FUTEX_WAIT_PRIVATE, 3, NULL) = 0 +futex(0x2ca36290, FUTEX_WAKE_PRIVATE, 1) = 0 +rt_sigprocmask(SIG_BLOCK, [INT], [], 8) = 0 +rt_sigaction(SIGINT, {0x3cce0b8, [], SA_RESETHAND|SA_SIGINFO|0x4000000}, NULL, 8) = 0 +rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 +ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0 +stat64(\"/volume1/homes/admin/GitAnnex.git\", 0x2b604890) = -1 ENOENT (No such file or directory) +getcwd(\"/volume1/homes/admin\", 4096) = 21 +getcwd(\"/volume1/homes/admin\", 4096) = 21 +getcwd(\"/volume1/homes/admin\", 4096) = 21 +pipe([8, 9]) = 0 +pipe([10, 11]) = 0 +rt_sigprocmask(SIG_BLOCK, [INT], [], 8) = 0 +timer_settime(0x2, 0, {it_interval={0, 0}, it_value={0, 0}}, NULL) = 0 +vfork() = 18074 +close(9) = 0 +fcntl64(8, F_SETFD, FD_CLOEXEC) = 0 +close(11) = 0 +fcntl64(10, F_SETFD, FD_CLOEXEC) = 0 +read(10, \"\", 4) = 0 +close(10) = 0 +rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 +timer_settime(0x2, 0, {it_interval={0, 10000000}, it_value={0, 10000000}}, NULL) = 0 +fcntl64(8, F_GETFL) = 0 (flags O_RDONLY) +fcntl64(8, F_SETFL, O_RDONLY|O_NONBLOCK) = 0 +ioctl(8, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7ea3e7ac) = -1 EINVAL (Invalid argument) +read(8, 0x2b6f1010, 8096) = -1 EAGAIN (Resource temporarily unavailable) +epoll_ctl(0x4, 0x1, 0x8, 0x2b604d0c) = 0 +write(7, \"\1\0\0\0\0\0\0\0\", 8) = 8 +futex(0x2ca36314, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x2ca36310, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1 +futex(0x2ca36340, FUTEX_WAKE_PRIVATE, 1) = 1 +futex(0x41981d0, FUTEX_WAKE_PRIVATE, 1) = 1 +futex(0x2ca36264, FUTEX_WAIT_PRIVATE, 5, NULL) = ? ERESTARTSYS (To be restarted) +--- SIGCHLD (Child exited) @ 0 (0) --- +futex(0x2ca36264, FUTEX_WAIT_PRIVATE, 5, NULL) = -1 EAGAIN (Resource temporarily unavailable) +futex(0x2ca36290, FUTEX_WAKE_PRIVATE, 1) = 0 +read(8, \"user.email\nbraun_markus@gmx.de\0u\"..., 8096) = 211 +read(8, \"\", 8096) = 0 +close(8) = 0 +wait4(18074, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 18074 +rt_sigprocmask(SIG_BLOCK, [INT], [], 8) = 0 +rt_sigaction(SIGINT, {SIG_DFL, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 +rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 +select(2, [], [1], NULL, {0, 0}) = 1 (out [1], left {0, 0}) +write(1, \"annex.uuid=8d7304a1-6ea5-46cc-83\"..., 48) = 48 +select(2, [], [1], NULL, {0, 0}) = 1 (out [1], left {0, 0}) +write(1, \"core.gcrypt-id=\n\", 16) = 16 +wait4(-1, 0x2b604f10, WNOHANG|WSTOPPED, NULL) = -1 ECHILD (No child processes) +clock_gettime(0x2 /* CLOCK_??? */, {0, 36727080}) = 0 +clock_gettime(CLOCK_MONOTONIC, {438838, 341180247}) = 0 +write(6, \"\376\", 1) = 1 +rt_sigprocmask(SIG_BLOCK, [], [], 8) = 0 +clock_gettime(0x2 /* CLOCK_??? */, {0, 36947040}) = 0 +clock_gettime(CLOCK_MONOTONIC, {438838, 341757433}) = 0 +clock_getres(0x3 /* CLOCK_??? */, {0, 1}) = 0 +clock_gettime(0x3 /* CLOCK_??? */, {0, 36313200}) = 0 +rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 +futex(0x2ca36314, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x2ca36310, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1 +futex(0x2ca36340, FUTEX_WAKE_PRIVATE, 1) = 1 +futex(0x41981d0, FUTEX_WAKE_PRIVATE, 1) = 1 +timer_settime(0x2, 0, {it_interval={0, 0}, it_value={0, 0}}, NULL) = 0 +rt_sigaction(SIGVTALRM, {SIG_IGN, [], SA_INTERRUPT|SA_NODEFER|SA_RESETHAND|0x4000000}, {0x3cc4e08, [], SA_RESTART|0x4000000}, 8) = 0 +timer_delete(0x2) = 0 +rt_sigprocmask(SIG_BLOCK, [TTOU], [], 8) = 0 +rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 +rt_sigaction(SIGINT, {SIG_DFL, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 +rt_sigaction(SIGPIPE, {SIG_DFL, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 +rt_sigaction(SIGTSTP, {SIG_DFL, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 +clock_gettime(0x2 /* CLOCK_??? */, {0, 38184040}) = 0 +clock_gettime(CLOCK_MONOTONIC, {438838, 344573245}) = 0 +close(3) = 0 +exit_group(0) = ? + +it ends succesfully +"""]] From 202f2d3a2e37106b339912e0ab08f994a805b3a3 Mon Sep 17 00:00:00 2001 From: "https://www.google.com/accounts/o8/id?id=AItOawlmLuHhscJsoAqb9q0N3LdtHum6LjY1LK4" Date: Wed, 18 Feb 2015 12:15:01 +0000 Subject: [PATCH 03/21] removed --- ..._3cd2c0ce36a85ad05c5ee7cd63ef98cd._comment | 261 ------------------ 1 file changed, 261 deletions(-) delete mode 100644 doc/bugs/git-annex_on_NAS_eats_all_memory/comment_8_3cd2c0ce36a85ad05c5ee7cd63ef98cd._comment diff --git a/doc/bugs/git-annex_on_NAS_eats_all_memory/comment_8_3cd2c0ce36a85ad05c5ee7cd63ef98cd._comment b/doc/bugs/git-annex_on_NAS_eats_all_memory/comment_8_3cd2c0ce36a85ad05c5ee7cd63ef98cd._comment deleted file mode 100644 index 4a94065a55..0000000000 --- a/doc/bugs/git-annex_on_NAS_eats_all_memory/comment_8_3cd2c0ce36a85ad05c5ee7cd63ef98cd._comment +++ /dev/null @@ -1,261 +0,0 @@ -[[!comment format=mdwn - username="https://www.google.com/accounts/o8/id?id=AItOawlmLuHhscJsoAqb9q0N3LdtHum6LjY1LK4" - nickname="Markus" - subject="comment 8" - date="2015-02-18T12:14:26Z" - content=""" -I diffed the strace when running locally and per git-annex sync: -The traces are 100% equal for the first ~480 calls and then they start to differ: - -git annex sync from laptop: - -mprotect(0x2b1e2000, 8192, PROT_READ) = 0 -mprotect(0x2aafb000, 4096, PROT_READ) = 0 -mprotect(0x2b24e000, 4096, PROT_READ) = 0 -mprotect(0x2aca5000, 4096, PROT_READ) = 0 -mprotect(0x2ad6d000, 4096, PROT_READ) = 0 -mprotect(0x2b21f000, 4096, PROT_READ) = 0 -mprotect(0x2acdd000, 4096, PROT_READ) = 0 -mprotect(0x2ac24000, 4096, PROT_READ) = 0 -mprotect(0x2aae5000, 4096, PROT_READ) = 0 -mprotect(0x2ad27000, 20480, PROT_READ) = 0 -mprotect(0x2acbd000, 4096, PROT_READ) = 0 -mprotect(0x2b0a0000, 4096, PROT_READ) = 0 -mprotect(0x2ab55000, 4096, PROT_READ) = 0 -mprotect(0x2aacd000, 4096, PROT_READ) = 0 -mprotect(0x2ab32000, 4096, PROT_READ) = 0 -mprotect(0x2afeb000, 16384, PROT_READ) = 0 -mprotect(0x2aeaf000, 20480, PROT_READ) = 0 -mprotect(0x2abfd000, 4096, PROT_READ) = 0 -mprotect(0x2ada4000, 4096, PROT_READ) = 0 -mprotect(0x2abbc000, 4096, PROT_READ) = 0 -set_tid_address(0x2ac28068) = 18015 -set_robust_list(0x2ac28070, 0xc) = 0 -rt_sigaction(SIGRTMIN, {0x2ac04550, [], SA_SIGINFO|0x4000000}, NULL, 8) = 0 -rt_sigaction(SIGRT_1, {0x2ac043e4, [], SA_RESTART|SA_SIGINFO|0x4000000}, NULL, 8) = 0 -rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0 -getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0 -futex(0x2ad2cc44, FUTEX_WAKE_PRIVATE, 2147483647) = 0 -brk(0) = 0x2bf15000 -brk(0x2bf36000) = 0x2bf36000 -open(\"/dev/urandom\", O_RDONLY|O_LARGEFILE) = 3 -fcntl64(3, F_GETFD) = 0 -fcntl64(3, F_SETFD, FD_CLOEXEC) = 0 -fstat64(3, {st_mode=S_IFCHR|0666, st_rdev=makedev(1, 9), ...}) = 0 -clock_gettime(CLOCK_REALTIME, {1424257023, 820788195}) = 0 -getrusage(0x1 /* RUSAGE_??? */, {ru_utime={0, 20000}, ru_stime={0, 10000}, ...}) = 0 -read(3, \"yx$\17\207\4\364\233\366\361\210[,\334(\214\\"\343\226\2'd\303\24\306\254\323\363\2523\36\2\", 32) = 32 -read(3, \"\243e\370\36n\320@l\345\27\6/\323%5`2\355\355B\", 8) = 8 -clock_getres(0x2 /* CLOCK_??? */, {0, 1}) = 0 -clock_gettime(0x2 /* CLOCK_??? */, {0, 44157400}) = 0 -clock_gettime(CLOCK_MONOTONIC, {438775, 660164522}) = 0 -brk(0x2bf57000) = 0x2bf57000 -mmap2(NULL, 2097152, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b250000 -munmap(0x2b250000, 720896) = 0 -munmap(0x2b400000, 327680) = 0 -timer_create(CLOCK_MONOTONIC, {0, SIGVTALRM, SIGEV_SIGNAL, {...}}, {0x1}) = 0 -rt_sigaction(SIGVTALRM, {0x3cc4e08, [], SA_RESTART|0x4000000}, NULL, 8) = 0 -timer_settime(0x1, 0, {it_interval={0, 10000000}, it_value={0, 10000000}}, NULL) = 0 -rt_sigaction(SIGINT, {0x3cce17c, [], 0x4000000 /* SA_??? */}, {SIG_DFL, [], 0}, 8) = 0 -rt_sigaction(SIGINT, NULL, {0x3cce17c, [], 0x4000000 /* SA_??? */}, 8) = 0 -rt_sigaction(SIGINT, {0x3cce17c, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 -rt_sigaction(SIGPIPE, {0x3cce0b4, [], 0x4000000 /* SA_??? */}, {SIG_DFL, [], 0}, 8) = 0 -rt_sigaction(SIGTSTP, {0x3cce1c0, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 -epoll_create(0x100) = 4 -fcntl64(4, F_SETFD, FD_CLOEXEC) = 0 -pipe([5, 6]) = 0 -fcntl64(6, F_GETFL) = 0x1 (flags O_WRONLY) -fcntl64(6, F_SETFL, O_WRONLY|O_NONBLOCK) = 0 -fcntl64(5, F_SETFD, FD_CLOEXEC) = 0 -fcntl64(6, F_SETFD, FD_CLOEXEC) = 0 -mmap2(NULL, 8388608, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS|0x20000, -1, 0) = 0x2b400000 -mprotect(0x2b400000, 4096, PROT_NONE) = 0 -clone(child_stack=0x2bbfef98, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x2bbff4c8, tls=0x2bbff920, child_tidptr=0x2bbff4c8) = 18039 -futex(0x2bf3aa6c, FUTEX_WAIT_PRIVATE, 1, NULL) = 0 -futex(0x2bf3aa98, FUTEX_WAIT_PRIVATE, 2, NULL) = 0 -futex(0x2bf3aa98, FUTEX_WAKE_PRIVATE, 1) = 0 -futex(0x41981d0, FUTEX_WAIT_PRIVATE, 2, NULL) = 0 -futex(0x41981d0, FUTEX_WAKE_PRIVATE, 1) = 0 -eventfd2(0, 0) = 7 -fcntl64(7, F_GETFL) = 0x2 (flags O_RDWR) -fcntl64(7, F_SETFL, O_RDWR|O_NONBLOCK) = 0 -fcntl64(7, F_SETFD, FD_CLOEXEC) = 0 -epoll_ctl(0x4, 0x1, 0x5, 0x2b304430) = 0 -epoll_ctl(0x4, 0x1, 0x7, 0x2b304448) = 0 -clock_gettime(0x2 /* CLOCK_??? */, {0, 46001320}) = 0 -clock_gettime(CLOCK_MONOTONIC, {438775, 665190920}) = 0 -futex(0x2bf3aa6c, FUTEX_WAIT_PRIVATE, 3, NULL) = 0 -futex(0x2bf3aa98, FUTEX_WAIT_PRIVATE, 2, NULL) = 0 -futex(0x2bf3aa98, FUTEX_WAKE_PRIVATE, 1) = 0 -futex(0x41981d0, FUTEX_WAIT_PRIVATE, 2, NULL) = 0 -futex(0x41981d0, FUTEX_WAKE_PRIVATE, 1) = 0 -rt_sigprocmask(SIG_BLOCK, [INT], [], 8) = 0 -rt_sigaction(SIGINT, {0x3cce0b8, [], SA_RESETHAND|SA_SIGINFO|0x4000000}, NULL, 8) = 0 -rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 -open(\"/usr/lib/arm-linux-gnueabi/gconv/gconv-modules.cache\", O_RDONLY) = -1 ENOENT (No such file or directory) -open(\"/usr/lib/arm-linux-gnueabi/gconv/gconv-modules\", O_RDONLY|0x80000) = -1 ENOENT (No such file or directory) -futex(0x2b1e4ef4, FUTEX_WAKE_PRIVATE, 2147483647) = 0 ---- SIGVTALRM (Virtual timer expired) @ 0 (0) --- -sigreturn() = ? (mask now [TRAP FPE KILL SEGV USR2 TERM STKFLT CHLD CONT TSTP TTIN TTOU XCPU VTALRM WINCH PWR]) ---- SIGVTALRM (Virtual timer expired) @ 0 (0) --- -sigreturn() = ? (mask now [TRAP FPE KILL SEGV USR2 TERM STKFLT CHLD CONT TSTP TTIN TTOU XCPU VTALRM WINCH PWR]) ---- SIGVTALRM (Virtual timer expired) @ 0 (0) --- -sigreturn() - -looping endlessly from there on - -running on nas directly: -mprotect(0x2b0dc000, 8192, PROT_READ) = 0 -mprotect(0x2ae4a000, 4096, PROT_READ) = 0 -mprotect(0x2b241000, 4096, PROT_READ) = 0 -mprotect(0x2aee9000, 4096, PROT_READ) = 0 -mprotect(0x2b19e000, 4096, PROT_READ) = 0 -mprotect(0x2b1d7000, 4096, PROT_READ) = 0 -mprotect(0x2b15c000, 4096, PROT_READ) = 0 -mprotect(0x2ae71000, 4096, PROT_READ) = 0 -mprotect(0x2ab70000, 4096, PROT_READ) = 0 -mprotect(0x2b138000, 20480, PROT_READ) = 0 -mprotect(0x2b0f8000, 4096, PROT_READ) = 0 -mprotect(0x2af9a000, 4096, PROT_READ) = 0 -mprotect(0x2ab57000, 4096, PROT_READ) = 0 -mprotect(0x2ab3a000, 4096, PROT_READ) = 0 -mprotect(0x2ab1b000, 4096, PROT_READ) = 0 -mprotect(0x2ae33000, 16384, PROT_READ) = 0 -mprotect(0x2acf7000, 20480, PROT_READ) = 0 -mprotect(0x2abec000, 4096, PROT_READ) = 0 -mprotect(0x2abab000, 4096, PROT_READ) = 0 -mprotect(0x2aaf3000, 4096, PROT_READ) = 0 -set_tid_address(0x2b2a8068) = 18072 -set_robust_list(0x2b2a8070, 0xc) = 0 -rt_sigaction(SIGRTMIN, {0x2ae51550, [], SA_SIGINFO|0x4000000}, NULL, 8) = 0 -rt_sigaction(SIGRT_1, {0x2ae513e4, [], SA_RESTART|SA_SIGINFO|0x4000000}, NULL, 8) = 0 -rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0 -getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0 -futex(0x2b13dc44, FUTEX_WAKE_PRIVATE, 2147483647) = 0 -brk(0) = 0x2ca10000 -brk(0x2ca31000) = 0x2ca31000 -open(\"/dev/urandom\", O_RDONLY|O_LARGEFILE) = 3 -fcntl64(3, F_GETFD) = 0 -fcntl64(3, F_SETFD, FD_CLOEXEC) = 0 -fstat64(3, {st_mode=S_IFCHR|0666, st_rdev=makedev(1, 9), ...}) = 0 -clock_gettime(CLOCK_REALTIME, {1424257086, 456931329}) = 0 -getrusage(0x1 /* RUSAGE_??? */, {ru_utime={0, 20000}, ru_stime={0, 0}, ...}) = 0 -read(3, \"l\36K\322\231Ud\302.\335\301dhC)A\260\374~\350\254\341-\267\215\300\313\334\215XqI\", 32) = 32 -read(3, \"\25017J\372\361^\374\254\347$\f=Ag)\10r\25\317r]\216\337G\371M\27\321\326\0(\", 32) = 32 -read(3, \"\245\271\251\373\270\350S1\", 8) = 8 -open(\"/usr/lib/locale/locale-archive\", O_RDONLY|O_LARGEFILE|0x80000) = 4 -fstat64(4, {st_mode=S_IFREG|0644, st_size=14362288, ...}) = 0 -mmap2(NULL, 2097152, PROT_READ, MAP_PRIVATE, 4, 0) = 0x2b36b000 -close(4) = 0 -clock_getres(0x2 /* CLOCK_??? */, {0, 1}) = 0 -clock_gettime(0x2 /* CLOCK_??? */, {0, 29204680}) = 0 -clock_gettime(CLOCK_MONOTONIC, {438838, 301653485}) = 0 -brk(0x2ca52000) = 0x2ca52000 -mmap2(NULL, 2097152, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b579000 -munmap(0x2b579000, 552960) = 0 -munmap(0x2b700000, 495616) = 0 -timer_create(CLOCK_MONOTONIC, {0, SIGVTALRM, SIGEV_SIGNAL, {...}}, {0x2}) = 0 -rt_sigaction(SIGVTALRM, {0x3cc4e08, [], SA_RESTART|0x4000000}, NULL, 8) = 0 -timer_settime(0x2, 0, {it_interval={0, 10000000}, it_value={0, 10000000}}, NULL) = 0 -rt_sigaction(SIGINT, {0x3cce17c, [], 0x4000000 /* SA_??? */}, {SIG_DFL, [], 0}, 8) = 0 -rt_sigaction(SIGINT, NULL, {0x3cce17c, [], 0x4000000 /* SA_??? */}, 8) = 0 -rt_sigaction(SIGINT, {0x3cce17c, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 -rt_sigaction(SIGPIPE, {0x3cce0b4, [], 0x4000000 /* SA_??? */}, {SIG_DFL, [], 0}, 8) = 0 -rt_sigaction(SIGTSTP, {0x3cce1c0, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 -epoll_create(0x100) = 4 -fcntl64(4, F_SETFD, FD_CLOEXEC) = 0 -pipe([5, 6]) = 0 -fcntl64(6, F_GETFL) = 0x1 (flags O_WRONLY) -fcntl64(6, F_SETFL, O_WRONLY|O_NONBLOCK) = 0 -fcntl64(5, F_SETFD, FD_CLOEXEC) = 0 -fcntl64(6, F_SETFD, FD_CLOEXEC) = 0 -mmap2(NULL, 8388608, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS|0x20000, -1, 0) = 0x2b700000 -mprotect(0x2b700000, 4096, PROT_NONE) = 0 -clone(child_stack=0x2befef98, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x2beff4c8, tls=0x2beff920, child_tidptr=0x2beff4c8) = 18073 -futex(0x2ca36264, FUTEX_WAIT_PRIVATE, 1, NULL) = 0 -futex(0x2ca36290, FUTEX_WAKE_PRIVATE, 1) = 0 -eventfd2(0, 0) = 7 -fcntl64(7, F_GETFL) = 0x2 (flags O_RDWR) -fcntl64(7, F_SETFL, O_RDWR|O_NONBLOCK) = 0 -fcntl64(7, F_SETFD, FD_CLOEXEC) = 0 -epoll_ctl(0x4, 0x1, 0x5, 0x2b604430) = 0 -epoll_ctl(0x4, 0x1, 0x7, 0x2b604448) = 0 -futex(0x2ca36314, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x2ca36310, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1 -clock_gettime(0x2 /* CLOCK_??? */, {0, 31248840}) = 0 -clock_gettime(CLOCK_MONOTONIC, {438838, 311493486}) = 0 -futex(0x2ca36264, FUTEX_WAIT_PRIVATE, 3, NULL) = 0 -futex(0x2ca36290, FUTEX_WAKE_PRIVATE, 1) = 0 -rt_sigprocmask(SIG_BLOCK, [INT], [], 8) = 0 -rt_sigaction(SIGINT, {0x3cce0b8, [], SA_RESETHAND|SA_SIGINFO|0x4000000}, NULL, 8) = 0 -rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 -ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0 -stat64(\"/volume1/homes/admin/GitAnnex.git\", 0x2b604890) = -1 ENOENT (No such file or directory) -getcwd(\"/volume1/homes/admin\", 4096) = 21 -getcwd(\"/volume1/homes/admin\", 4096) = 21 -getcwd(\"/volume1/homes/admin\", 4096) = 21 -pipe([8, 9]) = 0 -pipe([10, 11]) = 0 -rt_sigprocmask(SIG_BLOCK, [INT], [], 8) = 0 -timer_settime(0x2, 0, {it_interval={0, 0}, it_value={0, 0}}, NULL) = 0 -vfork() = 18074 -close(9) = 0 -fcntl64(8, F_SETFD, FD_CLOEXEC) = 0 -close(11) = 0 -fcntl64(10, F_SETFD, FD_CLOEXEC) = 0 -read(10, \"\", 4) = 0 -close(10) = 0 -rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 -timer_settime(0x2, 0, {it_interval={0, 10000000}, it_value={0, 10000000}}, NULL) = 0 -fcntl64(8, F_GETFL) = 0 (flags O_RDONLY) -fcntl64(8, F_SETFL, O_RDONLY|O_NONBLOCK) = 0 -ioctl(8, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7ea3e7ac) = -1 EINVAL (Invalid argument) -read(8, 0x2b6f1010, 8096) = -1 EAGAIN (Resource temporarily unavailable) -epoll_ctl(0x4, 0x1, 0x8, 0x2b604d0c) = 0 -write(7, \"\1\0\0\0\0\0\0\0\", 8) = 8 -futex(0x2ca36314, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x2ca36310, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1 -futex(0x2ca36340, FUTEX_WAKE_PRIVATE, 1) = 1 -futex(0x41981d0, FUTEX_WAKE_PRIVATE, 1) = 1 -futex(0x2ca36264, FUTEX_WAIT_PRIVATE, 5, NULL) = ? ERESTARTSYS (To be restarted) ---- SIGCHLD (Child exited) @ 0 (0) --- -futex(0x2ca36264, FUTEX_WAIT_PRIVATE, 5, NULL) = -1 EAGAIN (Resource temporarily unavailable) -futex(0x2ca36290, FUTEX_WAKE_PRIVATE, 1) = 0 -read(8, \"user.email\nbraun_markus@gmx.de\0u\"..., 8096) = 211 -read(8, \"\", 8096) = 0 -close(8) = 0 -wait4(18074, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 18074 -rt_sigprocmask(SIG_BLOCK, [INT], [], 8) = 0 -rt_sigaction(SIGINT, {SIG_DFL, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 -rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 -select(2, [], [1], NULL, {0, 0}) = 1 (out [1], left {0, 0}) -write(1, \"annex.uuid=8d7304a1-6ea5-46cc-83\"..., 48) = 48 -select(2, [], [1], NULL, {0, 0}) = 1 (out [1], left {0, 0}) -write(1, \"core.gcrypt-id=\n\", 16) = 16 -wait4(-1, 0x2b604f10, WNOHANG|WSTOPPED, NULL) = -1 ECHILD (No child processes) -clock_gettime(0x2 /* CLOCK_??? */, {0, 36727080}) = 0 -clock_gettime(CLOCK_MONOTONIC, {438838, 341180247}) = 0 -write(6, \"\376\", 1) = 1 -rt_sigprocmask(SIG_BLOCK, [], [], 8) = 0 -clock_gettime(0x2 /* CLOCK_??? */, {0, 36947040}) = 0 -clock_gettime(CLOCK_MONOTONIC, {438838, 341757433}) = 0 -clock_getres(0x3 /* CLOCK_??? */, {0, 1}) = 0 -clock_gettime(0x3 /* CLOCK_??? */, {0, 36313200}) = 0 -rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 -futex(0x2ca36314, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x2ca36310, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1 -futex(0x2ca36340, FUTEX_WAKE_PRIVATE, 1) = 1 -futex(0x41981d0, FUTEX_WAKE_PRIVATE, 1) = 1 -timer_settime(0x2, 0, {it_interval={0, 0}, it_value={0, 0}}, NULL) = 0 -rt_sigaction(SIGVTALRM, {SIG_IGN, [], SA_INTERRUPT|SA_NODEFER|SA_RESETHAND|0x4000000}, {0x3cc4e08, [], SA_RESTART|0x4000000}, 8) = 0 -timer_delete(0x2) = 0 -rt_sigprocmask(SIG_BLOCK, [TTOU], [], 8) = 0 -rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 -rt_sigaction(SIGINT, {SIG_DFL, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 -rt_sigaction(SIGPIPE, {SIG_DFL, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 -rt_sigaction(SIGTSTP, {SIG_DFL, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 -clock_gettime(0x2 /* CLOCK_??? */, {0, 38184040}) = 0 -clock_gettime(CLOCK_MONOTONIC, {438838, 344573245}) = 0 -close(3) = 0 -exit_group(0) = ? - -it ends succesfully -"""]] From 08cd37c710ffb13b0f69c5b9242f8f1e005de12a Mon Sep 17 00:00:00 2001 From: "https://www.google.com/accounts/o8/id?id=AItOawk9nck8WX8-ADF3Fdh5vFo4Qrw1I_bJcR8" Date: Wed, 18 Feb 2015 12:39:05 +0000 Subject: [PATCH 04/21] Added a comment --- ..._494f55419f131495a7994afe2a0e9bc3._comment | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 doc/bugs/Assistant_merge_loop/comment_15_494f55419f131495a7994afe2a0e9bc3._comment diff --git a/doc/bugs/Assistant_merge_loop/comment_15_494f55419f131495a7994afe2a0e9bc3._comment b/doc/bugs/Assistant_merge_loop/comment_15_494f55419f131495a7994afe2a0e9bc3._comment new file mode 100644 index 0000000000..db92aadc63 --- /dev/null +++ b/doc/bugs/Assistant_merge_loop/comment_15_494f55419f131495a7994afe2a0e9bc3._comment @@ -0,0 +1,54 @@ +[[!comment format=mdwn + username="https://www.google.com/accounts/o8/id?id=AItOawk9nck8WX8-ADF3Fdh5vFo4Qrw1I_bJcR8" + nickname="Jon Ander" + subject="comment 15" + date="2015-02-18T12:39:04Z" + content=""" +This is happening in in a repo shared by two computers using the webapp with version 5.20141125. All are empty commits. + + * 23da33e - (7 minutes ago) merge refs/remotes/bitbucket/synced/master (HEAD, bitbucket/synced/master, annex/direct/master) + * 7bd23db - (67 minutes ago) merge refs/remotes/bitbucket/synced/master + * d2f5c6b - (2 hours ago) merge refs/remotes/bitbucket/synced/master + * 05c0448 - (12 hours ago) merge refs/remotes/bitbucket/synced/master + * 5c370aa - (19 hours ago) merge refs/remotes/bitbucket/synced/master + * c6d7be4 - (20 hours ago) merge refs/remotes/bitbucket/synced/master + * 507a6c7 - (21 hours ago) merge refs/remotes/bitbucket/synced/master + * 6932fec - (22 hours ago) merge refs/remotes/bitbucket/synced/master + * cc0efa1 - (23 hours ago) merge refs/remotes/bitbucket/synced/master + * 12a7b8f - (24 hours ago) merge refs/remotes/bitbucket/synced/master + * 49a3f2c - (25 hours ago) merge refs/remotes/bitbucket/synced/master + * 6611612 - (26 hours ago) merge refs/remotes/bitbucket/synced/master + * 303895c - (2 days ago) merge refs/remotes/bitbucket/synced/master + * 3f8c96b - (2 days ago) merge refs/remotes/bitbucket/synced/master + * f283e20 - (2 days ago) merge refs/remotes/bitbucket/synced/master + * 96b920e - (2 days ago) merge refs/remotes/bitbucket/synced/master + * 2c88b50 - (2 days ago) merge refs/remotes/bitbucket/synced/master + * 5f6643b - (2 days ago) merge refs/remotes/bitbucket/synced/master + * 7a2f5ff - (2 days ago) merge refs/remotes/bitbucket/synced/master + * 3bdb942 - (2 days ago) merge refs/remotes/bitbucket/synced/master + * d24de2b - (2 days ago) merge refs/remotes/bitbucket/synced/master + * b29d45e - (2 days ago) merge refs/remotes/bitbucket/synced/master + * 871adb7 - (2 days ago) merge refs/remotes/bitbucket/synced/master + |\ + * | 4138b01 - (2 days ago) merge refs/remotes/bitbucket/synced/master + |/ + * c754adc - (2 days ago) merge refs/remotes/bitbucket/synced/master + * 587a56a - (2 days ago) merge refs/remotes/bitbucket/synced/master + * 2d257fd - (2 days ago) merge refs/remotes/bitbucket/synced/master + * 23018bf - (2 days ago) merge refs/remotes/bitbucket/synced/master + * 9f202b7 - (2 days ago) merge refs/remotes/bitbucket/synced/master + * bdd40f4 - (2 days ago) merge refs/remotes/bitbucket/synced/master + * 146b1a5 - (4 days ago) merge refs/remotes/bitbucket/synced/master (bitbucket/master) + |\ + * | 3886b4a - (4 days ago) merge refs/remotes/github/synced/master + * | 5714860 - (4 days ago) merge refs/remotes/github/synced/master + * | 64325a0 - (4 days ago) merge refs/remotes/github/synced/master + * | f1b49e6 - (5 days ago) merge refs/remotes/github/synced/master + * | 17330c8 - (5 days ago) merge refs/remotes/github/synced/master + |/ + * 54f9a8b - (6 days ago) (synced/master, master) + * ceb8133 - (6 days ago) + * f36ae3b - (6 days ago) + * 6acdf4c - (6 days ago) + +"""]] From 76a946852d03762b02af2b8415938a3e2bc43142 Mon Sep 17 00:00:00 2001 From: "https://www.google.com/accounts/o8/id?id=AItOawlmLuHhscJsoAqb9q0N3LdtHum6LjY1LK4" Date: Wed, 18 Feb 2015 12:39:17 +0000 Subject: [PATCH 05/21] Added a comment --- ..._5cabffc139a8db7680346ccf0f4dc429._comment | 254 ++++++++++++++++++ 1 file changed, 254 insertions(+) create mode 100644 doc/bugs/git-annex_on_NAS_eats_all_memory/comment_8_5cabffc139a8db7680346ccf0f4dc429._comment diff --git a/doc/bugs/git-annex_on_NAS_eats_all_memory/comment_8_5cabffc139a8db7680346ccf0f4dc429._comment b/doc/bugs/git-annex_on_NAS_eats_all_memory/comment_8_5cabffc139a8db7680346ccf0f4dc429._comment new file mode 100644 index 0000000000..b0cb8674f6 --- /dev/null +++ b/doc/bugs/git-annex_on_NAS_eats_all_memory/comment_8_5cabffc139a8db7680346ccf0f4dc429._comment @@ -0,0 +1,254 @@ +[[!comment format=c + username="https://www.google.com/accounts/o8/id?id=AItOawlmLuHhscJsoAqb9q0N3LdtHum6LjY1LK4" + nickname="Markus" + subject="comment 8" + date="2015-02-18T12:39:17Z" + content=""" +Diff between the straces (the first ~490 lines have been identical and are removed for simplicity) + +Running per ssh: +mprotect(0x2b1e2000, 8192, PROT_READ) = 0 +mprotect(0x2aafb000, 4096, PROT_READ) = 0 +mprotect(0x2b24e000, 4096, PROT_READ) = 0 +mprotect(0x2aca5000, 4096, PROT_READ) = 0 +mprotect(0x2ad6d000, 4096, PROT_READ) = 0 +mprotect(0x2b21f000, 4096, PROT_READ) = 0 +mprotect(0x2acdd000, 4096, PROT_READ) = 0 +mprotect(0x2ac24000, 4096, PROT_READ) = 0 +mprotect(0x2aae5000, 4096, PROT_READ) = 0 +mprotect(0x2ad27000, 20480, PROT_READ) = 0 +mprotect(0x2acbd000, 4096, PROT_READ) = 0 +mprotect(0x2b0a0000, 4096, PROT_READ) = 0 +mprotect(0x2ab55000, 4096, PROT_READ) = 0 +mprotect(0x2aacd000, 4096, PROT_READ) = 0 +mprotect(0x2ab32000, 4096, PROT_READ) = 0 +mprotect(0x2afeb000, 16384, PROT_READ) = 0 +mprotect(0x2aeaf000, 20480, PROT_READ) = 0 +mprotect(0x2abfd000, 4096, PROT_READ) = 0 +mprotect(0x2ada4000, 4096, PROT_READ) = 0 +mprotect(0x2abbc000, 4096, PROT_READ) = 0 +set_tid_address(0x2ac28068) = 18015 +set_robust_list(0x2ac28070, 0xc) = 0 +rt_sigaction(SIGRTMIN, {0x2ac04550, [], SA_SIGINFO|0x4000000}, NULL, 8) = 0 +rt_sigaction(SIGRT_1, {0x2ac043e4, [], SA_RESTART|SA_SIGINFO|0x4000000}, NULL, 8) = 0 +rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0 +getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0 +futex(0x2ad2cc44, FUTEX_WAKE_PRIVATE, 2147483647) = 0 +brk(0) = 0x2bf15000 +brk(0x2bf36000) = 0x2bf36000 +open(\"/dev/urandom\", O_RDONLY|O_LARGEFILE) = 3 +fcntl64(3, F_GETFD) = 0 +fcntl64(3, F_SETFD, FD_CLOEXEC) = 0 +fstat64(3, {st_mode=S_IFCHR|0666, st_rdev=makedev(1, 9), ...}) = 0 +clock_gettime(CLOCK_REALTIME, {1424257023, 820788195}) = 0 +getrusage(0x1 /* RUSAGE_??? */, {ru_utime={0, 20000}, ru_stime={0, 10000}, ...}) = 0 +read(3, \"yx$\17\207\4\364\233\366\361\210[,\334(\214\\"\343\226\2'd\303\24\306\254\323\363\2523\36\2\", 32) = 32 +read(3, \"\243e\370\36n\320@l\345\27\6/\323%5`2\355\355B\", 8) = 8 +clock_getres(0x2 /* CLOCK_??? */, {0, 1}) = 0 +clock_gettime(0x2 /* CLOCK_??? */, {0, 44157400}) = 0 +clock_gettime(CLOCK_MONOTONIC, {438775, 660164522}) = 0 +brk(0x2bf57000) = 0x2bf57000 +mmap2(NULL, 2097152, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b250000 +munmap(0x2b250000, 720896) = 0 +munmap(0x2b400000, 327680) = 0 +timer_create(CLOCK_MONOTONIC, {0, SIGVTALRM, SIGEV_SIGNAL, {...}}, {0x1}) = 0 +rt_sigaction(SIGVTALRM, {0x3cc4e08, [], SA_RESTART|0x4000000}, NULL, 8) = 0 +timer_settime(0x1, 0, {it_interval={0, 10000000}, it_value={0, 10000000}}, NULL) = 0 +rt_sigaction(SIGINT, {0x3cce17c, [], 0x4000000 /* SA_??? */}, {SIG_DFL, [], 0}, 8) = 0 +rt_sigaction(SIGINT, NULL, {0x3cce17c, [], 0x4000000 /* SA_??? */}, 8) = 0 +rt_sigaction(SIGINT, {0x3cce17c, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 +rt_sigaction(SIGPIPE, {0x3cce0b4, [], 0x4000000 /* SA_??? */}, {SIG_DFL, [], 0}, 8) = 0 +rt_sigaction(SIGTSTP, {0x3cce1c0, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 +epoll_create(0x100) = 4 +fcntl64(4, F_SETFD, FD_CLOEXEC) = 0 +pipe([5, 6]) = 0 +fcntl64(6, F_GETFL) = 0x1 (flags O_WRONLY) +fcntl64(6, F_SETFL, O_WRONLY|O_NONBLOCK) = 0 +fcntl64(5, F_SETFD, FD_CLOEXEC) = 0 +fcntl64(6, F_SETFD, FD_CLOEXEC) = 0 +mmap2(NULL, 8388608, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS|0x20000, -1, 0) = 0x2b400000 +mprotect(0x2b400000, 4096, PROT_NONE) = 0 +clone(child_stack=0x2bbfef98, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x2bbff4c8, tls=0x2bbff920, child_tidptr=0x2bbff4c8) = 18039 +futex(0x2bf3aa6c, FUTEX_WAIT_PRIVATE, 1, NULL) = 0 +futex(0x2bf3aa98, FUTEX_WAIT_PRIVATE, 2, NULL) = 0 +futex(0x2bf3aa98, FUTEX_WAKE_PRIVATE, 1) = 0 +futex(0x41981d0, FUTEX_WAIT_PRIVATE, 2, NULL) = 0 +futex(0x41981d0, FUTEX_WAKE_PRIVATE, 1) = 0 +eventfd2(0, 0) = 7 +fcntl64(7, F_GETFL) = 0x2 (flags O_RDWR) +fcntl64(7, F_SETFL, O_RDWR|O_NONBLOCK) = 0 +fcntl64(7, F_SETFD, FD_CLOEXEC) = 0 +epoll_ctl(0x4, 0x1, 0x5, 0x2b304430) = 0 +epoll_ctl(0x4, 0x1, 0x7, 0x2b304448) = 0 +clock_gettime(0x2 /* CLOCK_??? */, {0, 46001320}) = 0 +clock_gettime(CLOCK_MONOTONIC, {438775, 665190920}) = 0 +futex(0x2bf3aa6c, FUTEX_WAIT_PRIVATE, 3, NULL) = 0 +futex(0x2bf3aa98, FUTEX_WAIT_PRIVATE, 2, NULL) = 0 +futex(0x2bf3aa98, FUTEX_WAKE_PRIVATE, 1) = 0 +futex(0x41981d0, FUTEX_WAIT_PRIVATE, 2, NULL) = 0 +futex(0x41981d0, FUTEX_WAKE_PRIVATE, 1) = 0 +rt_sigprocmask(SIG_BLOCK, [INT], [], 8) = 0 +rt_sigaction(SIGINT, {0x3cce0b8, [], SA_RESETHAND|SA_SIGINFO|0x4000000}, NULL, 8) = 0 +rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 +open(\"/usr/lib/arm-linux-gnueabi/gconv/gconv-modules.cache\", O_RDONLY) = -1 ENOENT (No such file or directory) +open(\"/usr/lib/arm-linux-gnueabi/gconv/gconv-modules\", O_RDONLY|0x80000) = -1 ENOENT (No such file or directory) +futex(0x2b1e4ef4, FUTEX_WAKE_PRIVATE, 2147483647) = 0 +--- SIGVTALRM (Virtual timer expired) @ 0 (0) --- +sigreturn() = ? (mask now [TRAP FPE KILL SEGV USR2 TERM STKFLT CHLD CONT TSTP TTIN TTOU XCPU VTALRM WINCH PWR]) +--- SIGVTALRM (Virtual timer expired) @ 0 (0) --- +sigreturn() = ? (mask now [TRAP FPE KILL SEGV USR2 TERM STKFLT CHLD CONT TSTP TTIN TTOU XCPU VTALRM WINCH PWR]) + +Running local on NAS: +mprotect(0x2b0dc000, 8192, PROT_READ) = 0 +mprotect(0x2ae4a000, 4096, PROT_READ) = 0 +mprotect(0x2b241000, 4096, PROT_READ) = 0 +mprotect(0x2aee9000, 4096, PROT_READ) = 0 +mprotect(0x2b19e000, 4096, PROT_READ) = 0 +mprotect(0x2b1d7000, 4096, PROT_READ) = 0 +mprotect(0x2b15c000, 4096, PROT_READ) = 0 +mprotect(0x2ae71000, 4096, PROT_READ) = 0 +mprotect(0x2ab70000, 4096, PROT_READ) = 0 +mprotect(0x2b138000, 20480, PROT_READ) = 0 +mprotect(0x2b0f8000, 4096, PROT_READ) = 0 +mprotect(0x2af9a000, 4096, PROT_READ) = 0 +mprotect(0x2ab57000, 4096, PROT_READ) = 0 +mprotect(0x2ab3a000, 4096, PROT_READ) = 0 +mprotect(0x2ab1b000, 4096, PROT_READ) = 0 +mprotect(0x2ae33000, 16384, PROT_READ) = 0 +mprotect(0x2acf7000, 20480, PROT_READ) = 0 +mprotect(0x2abec000, 4096, PROT_READ) = 0 +mprotect(0x2abab000, 4096, PROT_READ) = 0 +mprotect(0x2aaf3000, 4096, PROT_READ) = 0 +set_tid_address(0x2b2a8068) = 18072 +set_robust_list(0x2b2a8070, 0xc) = 0 +rt_sigaction(SIGRTMIN, {0x2ae51550, [], SA_SIGINFO|0x4000000}, NULL, 8) = 0 +rt_sigaction(SIGRT_1, {0x2ae513e4, [], SA_RESTART|SA_SIGINFO|0x4000000}, NULL, 8) = 0 +rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0 +getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0 +futex(0x2b13dc44, FUTEX_WAKE_PRIVATE, 2147483647) = 0 +brk(0) = 0x2ca10000 +brk(0x2ca31000) = 0x2ca31000 +open(\"/dev/urandom\", O_RDONLY|O_LARGEFILE) = 3 +fcntl64(3, F_GETFD) = 0 +fcntl64(3, F_SETFD, FD_CLOEXEC) = 0 +fstat64(3, {st_mode=S_IFCHR|0666, st_rdev=makedev(1, 9), ...}) = 0 +clock_gettime(CLOCK_REALTIME, {1424257086, 456931329}) = 0 +getrusage(0x1 /* RUSAGE_??? */, {ru_utime={0, 20000}, ru_stime={0, 0}, ...}) = 0 +read(3, \"l\36K\322\231Ud\302.\335\301dhC)A\260\374~\350\254\341-\267\215\300\313\334\215XqI\", 32) = 32 +read(3, \"\25017J\372\361^\374\254\347$\f=Ag)\10r\25\317r]\216\337G\371M\27\321\326\0(\", 32) = 32 +read(3, \"\245\271\251\373\270\350S1\", 8) = 8 +open(\"/usr/lib/locale/locale-archive\", O_RDONLY|O_LARGEFILE|0x80000) = 4 +fstat64(4, {st_mode=S_IFREG|0644, st_size=14362288, ...}) = 0 +mmap2(NULL, 2097152, PROT_READ, MAP_PRIVATE, 4, 0) = 0x2b36b000 +close(4) = 0 +clock_getres(0x2 /* CLOCK_??? */, {0, 1}) = 0 +clock_gettime(0x2 /* CLOCK_??? */, {0, 29204680}) = 0 +clock_gettime(CLOCK_MONOTONIC, {438838, 301653485}) = 0 +brk(0x2ca52000) = 0x2ca52000 +mmap2(NULL, 2097152, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b579000 +munmap(0x2b579000, 552960) = 0 +munmap(0x2b700000, 495616) = 0 +timer_create(CLOCK_MONOTONIC, {0, SIGVTALRM, SIGEV_SIGNAL, {...}}, {0x2}) = 0 +rt_sigaction(SIGVTALRM, {0x3cc4e08, [], SA_RESTART|0x4000000}, NULL, 8) = 0 +timer_settime(0x2, 0, {it_interval={0, 10000000}, it_value={0, 10000000}}, NULL) = 0 +rt_sigaction(SIGINT, {0x3cce17c, [], 0x4000000 /* SA_??? */}, {SIG_DFL, [], 0}, 8) = 0 +rt_sigaction(SIGINT, NULL, {0x3cce17c, [], 0x4000000 /* SA_??? */}, 8) = 0 +rt_sigaction(SIGINT, {0x3cce17c, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 +rt_sigaction(SIGPIPE, {0x3cce0b4, [], 0x4000000 /* SA_??? */}, {SIG_DFL, [], 0}, 8) = 0 +rt_sigaction(SIGTSTP, {0x3cce1c0, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 +epoll_create(0x100) = 4 +fcntl64(4, F_SETFD, FD_CLOEXEC) = 0 +pipe([5, 6]) = 0 +fcntl64(6, F_GETFL) = 0x1 (flags O_WRONLY) +fcntl64(6, F_SETFL, O_WRONLY|O_NONBLOCK) = 0 +fcntl64(5, F_SETFD, FD_CLOEXEC) = 0 +fcntl64(6, F_SETFD, FD_CLOEXEC) = 0 +mmap2(NULL, 8388608, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS|0x20000, -1, 0) = 0x2b700000 +mprotect(0x2b700000, 4096, PROT_NONE) = 0 +clone(child_stack=0x2befef98, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x2beff4c8, tls=0x2beff920, child_tidptr=0x2beff4c8) = 18073 +futex(0x2ca36264, FUTEX_WAIT_PRIVATE, 1, NULL) = 0 +futex(0x2ca36290, FUTEX_WAKE_PRIVATE, 1) = 0 +eventfd2(0, 0) = 7 +fcntl64(7, F_GETFL) = 0x2 (flags O_RDWR) +fcntl64(7, F_SETFL, O_RDWR|O_NONBLOCK) = 0 +fcntl64(7, F_SETFD, FD_CLOEXEC) = 0 +epoll_ctl(0x4, 0x1, 0x5, 0x2b604430) = 0 +epoll_ctl(0x4, 0x1, 0x7, 0x2b604448) = 0 +futex(0x2ca36314, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x2ca36310, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1 +clock_gettime(0x2 /* CLOCK_??? */, {0, 31248840}) = 0 +clock_gettime(CLOCK_MONOTONIC, {438838, 311493486}) = 0 +futex(0x2ca36264, FUTEX_WAIT_PRIVATE, 3, NULL) = 0 +futex(0x2ca36290, FUTEX_WAKE_PRIVATE, 1) = 0 +rt_sigprocmask(SIG_BLOCK, [INT], [], 8) = 0 +rt_sigaction(SIGINT, {0x3cce0b8, [], SA_RESETHAND|SA_SIGINFO|0x4000000}, NULL, 8) = 0 +rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 +ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0 +stat64(\"/volume1/homes/admin/GitAnnex.git\", 0x2b604890) = -1 ENOENT (No such file or directory) +getcwd(\"/volume1/homes/admin\", 4096) = 21 +getcwd(\"/volume1/homes/admin\", 4096) = 21 +getcwd(\"/volume1/homes/admin\", 4096) = 21 +pipe([8, 9]) = 0 +pipe([10, 11]) = 0 +rt_sigprocmask(SIG_BLOCK, [INT], [], 8) = 0 +timer_settime(0x2, 0, {it_interval={0, 0}, it_value={0, 0}}, NULL) = 0 +vfork() = 18074 +close(9) = 0 +fcntl64(8, F_SETFD, FD_CLOEXEC) = 0 +close(11) = 0 +fcntl64(10, F_SETFD, FD_CLOEXEC) = 0 +read(10, \"\", 4) = 0 +close(10) = 0 +rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 +timer_settime(0x2, 0, {it_interval={0, 10000000}, it_value={0, 10000000}}, NULL) = 0 +fcntl64(8, F_GETFL) = 0 (flags O_RDONLY) +fcntl64(8, F_SETFL, O_RDONLY|O_NONBLOCK) = 0 +ioctl(8, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7ea3e7ac) = -1 EINVAL (Invalid argument) +read(8, 0x2b6f1010, 8096) = -1 EAGAIN (Resource temporarily unavailable) +epoll_ctl(0x4, 0x1, 0x8, 0x2b604d0c) = 0 +write(7, \"\1\0\0\0\0\0\0\0\", 8) = 8 +futex(0x2ca36314, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x2ca36310, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1 +futex(0x2ca36340, FUTEX_WAKE_PRIVATE, 1) = 1 +futex(0x41981d0, FUTEX_WAKE_PRIVATE, 1) = 1 +futex(0x2ca36264, FUTEX_WAIT_PRIVATE, 5, NULL) = ? ERESTARTSYS (To be restarted) +--- SIGCHLD (Child exited) @ 0 (0) --- +futex(0x2ca36264, FUTEX_WAIT_PRIVATE, 5, NULL) = -1 EAGAIN (Resource temporarily unavailable) +futex(0x2ca36290, FUTEX_WAKE_PRIVATE, 1) = 0 +read(8, \"user.email\nbraun_markus@gmx.de\0u\"..., 8096) = 211 +read(8, \"\", 8096) = 0 +close(8) = 0 +wait4(18074, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 18074 +rt_sigprocmask(SIG_BLOCK, [INT], [], 8) = 0 +rt_sigaction(SIGINT, {SIG_DFL, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 +rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 +select(2, [], [1], NULL, {0, 0}) = 1 (out [1], left {0, 0}) +write(1, \"annex.uuid=8d7304a1-6ea5-46cc-83\"..., 48) = 48 +select(2, [], [1], NULL, {0, 0}) = 1 (out [1], left {0, 0}) +write(1, \"core.gcrypt-id=\n\", 16) = 16 +wait4(-1, 0x2b604f10, WNOHANG|WSTOPPED, NULL) = -1 ECHILD (No child processes) +clock_gettime(0x2 /* CLOCK_??? */, {0, 36727080}) = 0 +clock_gettime(CLOCK_MONOTONIC, {438838, 341180247}) = 0 +write(6, \"\376\", 1) = 1 +rt_sigprocmask(SIG_BLOCK, [], [], 8) = 0 +clock_gettime(0x2 /* CLOCK_??? */, {0, 36947040}) = 0 +clock_gettime(CLOCK_MONOTONIC, {438838, 341757433}) = 0 +clock_getres(0x3 /* CLOCK_??? */, {0, 1}) = 0 +clock_gettime(0x3 /* CLOCK_??? */, {0, 36313200}) = 0 +rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 +futex(0x2ca36314, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x2ca36310, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1 +futex(0x2ca36340, FUTEX_WAKE_PRIVATE, 1) = 1 +futex(0x41981d0, FUTEX_WAKE_PRIVATE, 1) = 1 +timer_settime(0x2, 0, {it_interval={0, 0}, it_value={0, 0}}, NULL) = 0 +rt_sigaction(SIGVTALRM, {SIG_IGN, [], SA_INTERRUPT|SA_NODEFER|SA_RESETHAND|0x4000000}, {0x3cc4e08, [], SA_RESTART|0x4000000}, 8) = 0 +timer_delete(0x2) = 0 +rt_sigprocmask(SIG_BLOCK, [TTOU], [], 8) = 0 +rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 +rt_sigaction(SIGINT, {SIG_DFL, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 +rt_sigaction(SIGPIPE, {SIG_DFL, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 +rt_sigaction(SIGTSTP, {SIG_DFL, [], 0x4000000 /* SA_??? */}, NULL, 8) = 0 +clock_gettime(0x2 /* CLOCK_??? */, {0, 38184040}) = 0 +clock_gettime(CLOCK_MONOTONIC, {438838, 344573245}) = 0 +close(3) = 0 +exit_group(0) = ? + +"""]] From 19b78d3aa965117fa71dcebbcd843607e2653564 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 18 Feb 2015 17:47:07 -0400 Subject: [PATCH 06/21] add gitlab-shell --- doc/related_software.mdwn | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/doc/related_software.mdwn b/doc/related_software.mdwn index f2b8e601be..4b6f42d2f7 100644 --- a/doc/related_software.mdwn +++ b/doc/related_software.mdwn @@ -3,12 +3,10 @@ designed to interoperate with it. * The [[git-annex assistant|assistant]] is included in git-annex, and extends its use cases into new territory. -* [git-annex-watcher](https://github.com/rubiojr/git-annex-watcher) - is a status icon for your desktop. -* [[forum/gadu_-_git-annex_disk_usage]] is a du like utility that - is git-annex aware. -* [sizes](http://hackage.haskell.org/package/sizes) is another du-like - utility, with a `-A` switch that enables git-annex support. +* [gitlab-shell](https://gitlab.com/gitlab-org/gitlab-shell) supports + git-annex. So git-annex can be used with repositries served by Gitlab, + including gitlab.com, or deploy your own. + [See Gitlab's announcment](https://about.gitlab.com/2015/02/17/gitlab-annex-solves-the-problem-of-versioning-large-binaries-with-git/) * Emacs Org mode can auto-commit attached files to git-annex. * [git annex darktable integration](https://github.com/xxv/darktable-git-annex) * [Magit](http://github.com/magit/magit), an Emacs mode for Git, has @@ -19,3 +17,9 @@ designed to interoperate with it. built by the Brazilian [Mocambos network](http://www.mocambos.net/) is [using git-annex to connect isolated communities](http://www.modspil.dk/itpolitik/baob_xia.html). Repositories sync over satellite internet and/or sneakernet. +* [[forum/gadu_-_git-annex_disk_usage]] is a du like utility that + is git-annex aware. +* [sizes](http://hackage.haskell.org/package/sizes) is another du-like + utility, with a `-A` switch that enables git-annex support. +* [git-annex-watcher](https://github.com/rubiojr/git-annex-watcher) + is a status icon for your desktop. From ef82fab4bb9a518100a957deea2846ce86353eb0 Mon Sep 17 00:00:00 2001 From: anarcat Date: Wed, 18 Feb 2015 21:53:52 +0000 Subject: [PATCH 07/21] Added a comment: thanks --- ...omment_3_2c895e4494cddab70ba761c6c48e7cf8._comment | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 doc/forum/optimising_lookupkey/comment_3_2c895e4494cddab70ba761c6c48e7cf8._comment diff --git a/doc/forum/optimising_lookupkey/comment_3_2c895e4494cddab70ba761c6c48e7cf8._comment b/doc/forum/optimising_lookupkey/comment_3_2c895e4494cddab70ba761c6c48e7cf8._comment new file mode 100644 index 0000000000..5ee6599586 --- /dev/null +++ b/doc/forum/optimising_lookupkey/comment_3_2c895e4494cddab70ba761c6c48e7cf8._comment @@ -0,0 +1,11 @@ +[[!comment format=mdwn + username="anarcat" + subject="thanks" + date="2015-02-18T21:53:52Z" + content=""" +great, thanks for the feedback! + +i agree that 25ms is quite fast to fire up a 52MB binary. :) i am just saying that if this is going to end up as part of building a webpage, i need something faster, or cache the results somewhere. + +duly noted for the other points, thanks again. i see a great intimate relationship building between `git cat-file` and me. ;) +"""]] From 37a13e89a16bd92b7d2663ce14c593b2cf34a969 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 18 Feb 2015 17:55:37 -0400 Subject: [PATCH 08/21] devbog --- .../day_256__sqlite_concurrency_argh.mdwn | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 doc/devblog/day_256__sqlite_concurrency_argh.mdwn diff --git a/doc/devblog/day_256__sqlite_concurrency_argh.mdwn b/doc/devblog/day_256__sqlite_concurrency_argh.mdwn new file mode 100644 index 0000000000..df02d47be7 --- /dev/null +++ b/doc/devblog/day_256__sqlite_concurrency_argh.mdwn @@ -0,0 +1,28 @@ +Breaking news: gitlab.com repositories now support git-annex! + +* [GitLab Annex solves the problem of versioning large binaries with git](https://about.gitlab.com/2015/02/17/gitlab-annex-solves-the-problem-of-versioning-large-binaries-with-git/) +* [freely licensed source code](https://gitlab.com/gitlab-org/gitlab-shell) + +A very nice surprise! More git hosters should do this.. + +---- + +Back to sqlite concurrency, I thought I had it dealt with, but more testing +today has turned up a lot more problems with sqlite and concurrent writers +(and readers). + +First, I noticed that a process can be happily writing changes to the +database, but if a second process starts reading from the database, this +will make the writier start failing with BUSY, and keep failing until the +second process goes idle. It turns out the solution to this is to use WAL +mode, which prevents readers from blocking writers. + +After several hours (persistent doesn't make it easy to enable WAL mode), +it seemed pretty robust with concurrent fsck. + +But then I saw SELECT fail with BUSY. I don't understand why a reader would +fail in WAL mode; that's counter to the documentation. My best guess is +that this happens when a checkpoint is being made. + +This seems to be a real bug in sqlite. It may only affect the older +versions bundled with persistent. From 3546612a6ac253861d69d4c95962e8cc93197ec9 Mon Sep 17 00:00:00 2001 From: anarcat Date: Wed, 18 Feb 2015 22:03:05 +0000 Subject: [PATCH 09/21] server-level daemon idea --- doc/todo/server-level_daemon__63__.mdwn | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 doc/todo/server-level_daemon__63__.mdwn diff --git a/doc/todo/server-level_daemon__63__.mdwn b/doc/todo/server-level_daemon__63__.mdwn new file mode 100644 index 0000000000..dad11595b6 --- /dev/null +++ b/doc/todo/server-level_daemon__63__.mdwn @@ -0,0 +1,3 @@ +coming from [[bugs/weird_entry_in_process_list]] - are there plans to make an init.d / systemd .service file for git-annex? + +my use case is that i have dedicated machines that will sync a common directory. they will run only one assistant - would patches to make a `git-annex` user, and the associated startup scripts, in the debian package be welcome? --[[anarcat]] From 510a116627aceb1c90c057bbb5480df04f1559b5 Mon Sep 17 00:00:00 2001 From: "https://www.google.com/accounts/o8/id?id=AItOawnbBRfl5F8gKRr1ko8Ai6FbEZStXXNF1S4" Date: Thu, 19 Feb 2015 11:06:34 +0000 Subject: [PATCH 10/21] Added a comment: "new files" group --- .../comment_4_f5cd38886b58917fa3c417861fd10a10._comment | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 doc/preferred_content/standard_groups/comment_4_f5cd38886b58917fa3c417861fd10a10._comment diff --git a/doc/preferred_content/standard_groups/comment_4_f5cd38886b58917fa3c417861fd10a10._comment b/doc/preferred_content/standard_groups/comment_4_f5cd38886b58917fa3c417861fd10a10._comment new file mode 100644 index 0000000000..495afaeee9 --- /dev/null +++ b/doc/preferred_content/standard_groups/comment_4_f5cd38886b58917fa3c417861fd10a10._comment @@ -0,0 +1,9 @@ +[[!comment format=mdwn + username="https://www.google.com/accounts/o8/id?id=AItOawnbBRfl5F8gKRr1ko8Ai6FbEZStXXNF1S4" + nickname="Áron" + subject=""new files" group" + date="2015-02-19T11:06:34Z" + content=""" +In my mobile devices I would like to automatically have the newest files, because those have the biggest chance that I want to watch/read them on mobile. But I have found any preferred content expression that is about the age of a file. Is it possible to do something like this with the existing git-annex capabilities? +thanks +"""]] From 4e1a25f9402dbc7e98fe10cb24fd2008adc428d2 Mon Sep 17 00:00:00 2001 From: "https://www.google.com/accounts/o8/id?id=AItOawmg0NqVniTETKYIWr6eyYRJnakNg0A6tRc" Date: Thu, 19 Feb 2015 11:54:14 +0000 Subject: [PATCH 11/21] Added a comment --- ...nt_4_17391f47897f166b763e8f3e33426fcf._comment | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 doc/bugs/SignatureDoesNotMatch_error_when_trying_to_enable_S3_remote_with_IAM_credentials/comment_4_17391f47897f166b763e8f3e33426fcf._comment diff --git a/doc/bugs/SignatureDoesNotMatch_error_when_trying_to_enable_S3_remote_with_IAM_credentials/comment_4_17391f47897f166b763e8f3e33426fcf._comment b/doc/bugs/SignatureDoesNotMatch_error_when_trying_to_enable_S3_remote_with_IAM_credentials/comment_4_17391f47897f166b763e8f3e33426fcf._comment new file mode 100644 index 0000000000..1d221cb3ad --- /dev/null +++ b/doc/bugs/SignatureDoesNotMatch_error_when_trying_to_enable_S3_remote_with_IAM_credentials/comment_4_17391f47897f166b763e8f3e33426fcf._comment @@ -0,0 +1,15 @@ +[[!comment format=mdwn + username="https://www.google.com/accounts/o8/id?id=AItOawmg0NqVniTETKYIWr6eyYRJnakNg0A6tRc" + nickname="Oliver" + subject="comment 4" + date="2015-02-19T11:54:14Z" + content=""" +I used `s3cmd` with the same credentials and I'm able to list the bucket contents. That file does exist, and it does contain the line expected. If I try and make the bucket: + +s3cmd mb s3://s3musicencrypted-a7e22956-5ce2-11e2-97a5-6f33220ffbf3 +ERROR: S3 error: 409 (BucketAlreadyOwnedByYou): Your previous request to create the named bucket succeeded and you already own it. + +So I should be able to create buckets, but of course creating a bucket that already exists doesn't really do anything. + +Taking exactly the same credentials as my .s3cfg and using them with git annex continues to fail with signature errors. +"""]] From 89b97bcdbcd277872f6fef0e44d98174fd1c04a7 Mon Sep 17 00:00:00 2001 From: edward Date: Thu, 19 Feb 2015 15:30:15 +0000 Subject: [PATCH 12/21] correct typo: datbase -> database --- doc/devblog/day_255__sqlite_concurrent_writers_problem.mdwn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/devblog/day_255__sqlite_concurrent_writers_problem.mdwn b/doc/devblog/day_255__sqlite_concurrent_writers_problem.mdwn index 779f3f7fd7..05b431a4dc 100644 --- a/doc/devblog/day_255__sqlite_concurrent_writers_problem.mdwn +++ b/doc/devblog/day_255__sqlite_concurrent_writers_problem.mdwn @@ -4,7 +4,7 @@ multiple concurrent fsck processes. The first problem was that having `fsck --incremental` running and starting a new `fsck --incremental` caused it to crash. And with good reason, since starting a new incremental fsck deletes the old database, the old process -was left writing to a datbase that had been deleted and recreated out from +was left writing to a database that had been deleted and recreated out from underneath it. Fixed with some locking. Next problem is harder. Sqlite doesn't support multiple concurrent writers From b3778348f89601a01143538d4cfadeb5fd76a3ee Mon Sep 17 00:00:00 2001 From: edward Date: Thu, 19 Feb 2015 15:31:27 +0000 Subject: [PATCH 13/21] fix typo: datbase -> databae --- .../git-annex-xbmc-playcount.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/tips/dumb_metadata_extraction_from_xbmc/git-annex-xbmc-playcount.pl b/doc/tips/dumb_metadata_extraction_from_xbmc/git-annex-xbmc-playcount.pl index 85b97188f1..56f902cb03 100644 --- a/doc/tips/dumb_metadata_extraction_from_xbmc/git-annex-xbmc-playcount.pl +++ b/doc/tips/dumb_metadata_extraction_from_xbmc/git-annex-xbmc-playcount.pl @@ -158,7 +158,7 @@ B<^MyVideos.*\.db$> and will fail if none is found. Manually specify the path to B<.xbmc/userdata/Database>. This overrides B<--home>. -Note that this doesn't point directly to the datbase itself, because +Note that this doesn't point directly to the database itself, because there are usually many database files and we want to automatically find the latest. This may be a stupid limitation. From 8c915ccebc6285a21e8581878088245fdc7da737 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Thu, 19 Feb 2015 14:16:19 -0400 Subject: [PATCH 14/21] prep release --- debian/changelog | 4 ++-- git-annex.cabal | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/debian/changelog b/debian/changelog index b1913b9c20..318e8a4ea0 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -git-annex (5.20150206) UNRELEASED; urgency=medium +git-annex (5.20150219) unstable; urgency=medium * glacier: Detect when the glacier command in PATH is the wrong one, from boto, rather than from glacier-cli, and refuse to use it, @@ -33,7 +33,7 @@ git-annex (5.20150206) UNRELEASED; urgency=medium * remotedaemon: Use the ssh-options git config. * Linux standalone: Improved process names of linker shimmed programs. - -- Joey Hess Fri, 06 Feb 2015 13:57:08 -0400 + -- Joey Hess Thu, 19 Feb 2015 14:16:03 -0400 git-annex (5.20150205) unstable; urgency=medium diff --git a/git-annex.cabal b/git-annex.cabal index 986ba6be82..0b51d3cae3 100644 --- a/git-annex.cabal +++ b/git-annex.cabal @@ -1,5 +1,5 @@ Name: git-annex -Version: 5.20150205 +Version: 5.20150219 Cabal-Version: >= 1.8 License: GPL-3 Maintainer: Joey Hess From 6726ce81163d6e8cac398e3489a91607420fd0bf Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Thu, 19 Feb 2015 14:31:04 -0400 Subject: [PATCH 15/21] fix intentional typo left in after debugging session, broke quvi support (last release is ok) --- Utility/Quvi.hs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Utility/Quvi.hs b/Utility/Quvi.hs index 33653b07ba..0669e7351a 100644 --- a/Utility/Quvi.hs +++ b/Utility/Quvi.hs @@ -63,7 +63,7 @@ parseEnum s = Page probeVersion :: IO QuviVersion probeVersion = catchDefaultIO NoQuvi $ - examine <$> processTranscript "quviaaa" ["--version"] Nothing + examine <$> processTranscript "quvi" ["--version"] Nothing where examine (s, True) | "quvi v0.4" `isInfixOf` s = Quvi04 From 7751a0584a4f7fc0f94b87ce90927d673f98f78f Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Thu, 19 Feb 2015 14:43:21 -0400 Subject: [PATCH 16/21] typo --- debian/changelog | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/debian/changelog b/debian/changelog index 318e8a4ea0..5c6ebdba10 100644 --- a/debian/changelog +++ b/debian/changelog @@ -21,7 +21,7 @@ git-annex (5.20150219) unstable; urgency=medium * addurl: Avoid crash if quvi is not installed, when git-annex was built with process-1.2 * bittorrent: Fix mojibake introduced in parsing arai2c progress output. - * fsck --from: If a download from a remote fails, propigate the failure. + * fsck --from: If a download from a remote fails, propagate the failure. * metadata: When setting metadata, do not recurse into directories by default, since that can be surprising behavior and difficult to recover from. The old behavior is available by using --force. From d24cfd315e4dfad770b9eadef96fb49804cb3acb Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Thu, 19 Feb 2015 14:55:05 -0400 Subject: [PATCH 17/21] add news item for git-annex 5.20150219 --- doc/news/version_5.20141219.mdwn | 20 ------------------- doc/news/version_5.20150219.mdwn | 34 ++++++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+), 20 deletions(-) delete mode 100644 doc/news/version_5.20141219.mdwn create mode 100644 doc/news/version_5.20150219.mdwn diff --git a/doc/news/version_5.20141219.mdwn b/doc/news/version_5.20141219.mdwn deleted file mode 100644 index 74d228c523..0000000000 --- a/doc/news/version_5.20141219.mdwn +++ /dev/null @@ -1,20 +0,0 @@ -git-annex 5.20141219 released with [[!toggle text="these changes"]] -[[!toggleable text=""" - * Webapp: When adding a new box.com remote, use the new style chunking. - Thanks, Jon Ander Peñalba. - * External special remote protocol now includes commands for setting - and getting the urls associated with a key. - * Urls can now be claimed by remotes. This will allow creating, - for example, a external special remote that handles magnet: and - *.torrent urls. - * Use wget -q --show-progress for less verbose wget output, - when built with wget 1.16. - * Added bittorrent special remote. - * addurl behavior change: When downloading an url ending in .torrent, - it will download files from bittorrent, instead of the old behavior - of adding the torrent file to the repository. - * Added Recommends on aria2. - * When possible, build with the haskell torrent library for parsing - torrent files. As a fallback, can instead use btshowmetainfo from - bittornado | bittorrent. - * Fix build with -f-S3."""]] \ No newline at end of file diff --git a/doc/news/version_5.20150219.mdwn b/doc/news/version_5.20150219.mdwn new file mode 100644 index 0000000000..0225e85626 --- /dev/null +++ b/doc/news/version_5.20150219.mdwn @@ -0,0 +1,34 @@ +git-annex 5.20150219 released with [[!toggle text="these changes"]] +[[!toggleable text=""" + * glacier: Detect when the glacier command in PATH is the wrong one, + from boto, rather than from glacier-cli, and refuse to use it, + since the boto program fails to fail when passed + parameters it does not understand. + * groupwanted: New command to set the groupwanted preferred content + expression. + * import: Support file matching options such as --exclude, --include, + --smallerthan, --largerthan + * The file matching options are now only accepted by commands that + can actually use them, instead of by all commands. + * import: Avoid checksumming file twice when run in the default + or --duplicate mode. + * Windows: Fix bug in dropping an annexed file, which + caused a symlink to be staged that contained backslashes. + * webapp: Fix reversion in opening webapp when starting it manually + inside a repository. + * assistant: Improve sanity check for control characters when pairing. + * Improve race recovery code when committing to git-annex branch. + * addurl: Avoid crash if quvi is not installed, when git-annex was + built with process-1.2 + * bittorrent: Fix mojibake introduced in parsing arai2c progress output. + * fsck --from: If a download from a remote fails, propagate the failure. + * metadata: When setting metadata, do not recurse into directories by + default, since that can be surprising behavior and difficult to recover + from. The old behavior is available by using --force. + * sync, assistant: Include repository name in head branch commit message. + * The ssh-options git config is now used by gcrypt, rsync, and ddar + special remotes that use ssh as a transport. + * sync, assistant: Use the ssh-options git config when doing git pull + and push. + * remotedaemon: Use the ssh-options git config. + * Linux standalone: Improved process names of linker shimmed programs."""]] \ No newline at end of file From 52daae54eb0861a7e48cadb7c7e407f3b955d57f Mon Sep 17 00:00:00 2001 From: "https://www.google.com/accounts/o8/id?id=AItOawmuT_R0AecWcfCFTN055N8rD_WwQkgo1PE" Date: Thu, 19 Feb 2015 20:18:05 +0000 Subject: [PATCH 18/21] Added a comment: macosx 10.9.5 --- .../comment_2_7b0d4109c04c47e65420105f0de3b7a2._comment | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 doc/forum/lsof_resource_use_problems/comment_2_7b0d4109c04c47e65420105f0de3b7a2._comment diff --git a/doc/forum/lsof_resource_use_problems/comment_2_7b0d4109c04c47e65420105f0de3b7a2._comment b/doc/forum/lsof_resource_use_problems/comment_2_7b0d4109c04c47e65420105f0de3b7a2._comment new file mode 100644 index 0000000000..a74832bba6 --- /dev/null +++ b/doc/forum/lsof_resource_use_problems/comment_2_7b0d4109c04c47e65420105f0de3b7a2._comment @@ -0,0 +1,8 @@ +[[!comment format=mdwn + username="https://www.google.com/accounts/o8/id?id=AItOawmuT_R0AecWcfCFTN055N8rD_WwQkgo1PE" + nickname="Tomas" + subject="macosx 10.9.5" + date="2015-02-19T20:18:05Z" + content=""" +I have the same issue. +"""]] From 90c918f181b64da8ac88382790585b76777bfd03 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Thu, 19 Feb 2015 16:03:49 -0400 Subject: [PATCH 19/21] devblog --- doc/devblog/day_257__release_day.mdwn | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 doc/devblog/day_257__release_day.mdwn diff --git a/doc/devblog/day_257__release_day.mdwn b/doc/devblog/day_257__release_day.mdwn new file mode 100644 index 0000000000..bd3057145c --- /dev/null +++ b/doc/devblog/day_257__release_day.mdwn @@ -0,0 +1,17 @@ +Today's release doesn't have the database branch merged of course, but it +still has a significant amount of changes. + +Developed a test case for the sqlite problem, that +reliably reproduces it, and sent it to the sqlite mailing list. It seems +that under heavy write load, when a new connection is made to the database, +SELECT can fail for a little while. Once one SELECT succeeds, that database +connection becomes solid, and won't fail any more (apparently). This makes +me think there might be some connection initialization steps that don't end +up finishing before the SELECT goes through in this situation. I should be +able to work around this problem by probing new connections for stability, +and probably will have to, since it'll be years before any bug fixed sqlite +is available everywhere. + +I also noticed that current git-annex incremental parallel fsck doesn't +really parallelize well; eg the processes do duplicate work. So, the +database branch is not really a regression in this area. From 3fc8d834e8ea2c74540c30d2f91b431c6f46f2c7 Mon Sep 17 00:00:00 2001 From: "https://www.google.com/accounts/o8/id?id=AItOawlc-3pdibcizrdz4WmZooECL0k6AvM1cWc" Date: Thu, 19 Feb 2015 22:22:26 +0000 Subject: [PATCH 20/21] Added a comment: S3 file/folder names --- ...omment_17_52d3510016c099d083553f9b3fa40db9._comment | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 doc/special_remotes/S3/comment_17_52d3510016c099d083553f9b3fa40db9._comment diff --git a/doc/special_remotes/S3/comment_17_52d3510016c099d083553f9b3fa40db9._comment b/doc/special_remotes/S3/comment_17_52d3510016c099d083553f9b3fa40db9._comment new file mode 100644 index 0000000000..85145ffb72 --- /dev/null +++ b/doc/special_remotes/S3/comment_17_52d3510016c099d083553f9b3fa40db9._comment @@ -0,0 +1,10 @@ +[[!comment format=mdwn + username="https://www.google.com/accounts/o8/id?id=AItOawlc-3pdibcizrdz4WmZooECL0k6AvM1cWc" + nickname="Joe" + subject="S3 file/folder names" + date="2015-02-19T22:22:26Z" + content=""" +Is there a way to tell the S3 backend to store the files as they are named locally, instead of by hashed content name? i.e., I've annexed foo/bar.txt and annex puts it in s3 as mybucket.name/foo/bar.txt instead of mybucket.name/GPGHMACSHA1-random.txt + +Or should I just write a script to s3cmd sync my annex, and add the S3/cloudfront distribution URL as a web remote? +"""]] From 21cab904a95896a0a07e191b5d2703f5426d45df Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Thu, 19 Feb 2015 18:45:07 -0400 Subject: [PATCH 21/21] remove now duplicate import --- Build/DistributionUpdate.hs | 1 - 1 file changed, 1 deletion(-) diff --git a/Build/DistributionUpdate.hs b/Build/DistributionUpdate.hs index e3990d0395..ce5edcdd9a 100644 --- a/Build/DistributionUpdate.hs +++ b/Build/DistributionUpdate.hs @@ -19,7 +19,6 @@ import Annex.Content import Backend import Git.Command -import Data.Default import Data.Time.Clock import Data.Char import System.Posix.Directory