rsync 3.0 may rock, but it’s also kinda crashy. :(
It’s died a couple of times while syncing up our ~2TB file upload backup. I’ve attached some gdb processes to try and at least get some backtraces next time it goes.
Update: Got a backtrace…
#0 0x00002b145663886b in free () from /lib/libc.so.6 #1 0x000000000043277b in pool_free_old (p=0x578730, addr=) at lib/pool_alloc.c:266 #2 0x0000000000404374 in flist_free (flist=0x89e960) at flist.c:2239 #3 0x000000000040ddbc in check_for_finished_files (itemizing=1, code=FLOG, check_redo=0) at generator.c:1851 #4 0x000000000040e189 in generate_files (f_out=4, local_name= ) at generator.c:1960 #5 0x000000000041753c in do_recv (f_in=5, f_out=4, local_name=0x0) at main.c:774 #6 0x00000000004177ac in client_run (f_in=5, f_out= , pid=25539, argc= , argv=0x56cf98) at main.c:1021 #7 0x0000000000418706 in main (argc=2, argv=0x56cf90) at main.c:1185
Looks like others may have seen it in the wild but a fix doesn’t seem to be around yet. Some sort of bug in the extent allocation pool freeing changes done in May 2007, I think.
Found and patched a probably unrelated bug in pool_alloc.c.
Further updated next day:
The crashy bug should be fixed now. Yay!