Bug 4327 - Sudden rsync errors
Summary: Sudden rsync errors
Status: RESOLVED WORKSFORME
Alias: None
Product: rsync
Classification: Unclassified
Component: core (show other bugs)
Version: 2.6.8
Hardware: All Windows XP
: P3 normal (vote)
Target Milestone: ---
Assignee: Wayne Davison
QA Contact: Rsync QA Contact
URL: http://www.ercbroadband.org
Keywords:
Depends on:
Blocks:
 
Reported: 2007-01-08 19:24 UTC by Mark Haney
Modified: 2008-01-12 11:45 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mark Haney 2007-01-08 19:24:00 UTC
I'm getting some unknown errors when trying to rsync between one of our servers and a client of ours.  These errors started after this server was upgraded to Fedora Core 5, but I've verified that the upgrade isn't the cause of the problem as another server running RHEL AS 4 has the same problem.  Below is the last 70 lines of an strace done earlier today.  


31557 fcntl(0, F_GETFL)                 = 0x802 (flags O_RDWR|O_NONBLOCK)
31557 fcntl(0, F_SETFL, O_RDWR)         = 0
31557 ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7fff272555e0) = -1 EINVAL (Invalid argument)
31557 fcntl(1, F_GETFL)                 = 0x802 (flags O_RDWR|O_NONBLOCK)
31557 fcntl(1, F_SETFL, O_RDWR)         = 0
31557 ioctl(2, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
31557 write(2, "Read from remote host homeguage."..., 63) = 63
31557 gettimeofday({1168304083, 914145}, NULL) = 0
31557 shutdown(3, 2 /* send and receive */) = -1 ENOTCONN (Transport endpoint is not connected)
31557 close(3)                          = 0
31557 brk(0x555555712000)               = 0x555555712000
31557 brk(0x555555702000)               = 0x555555702000
31557 brk(0x5555556f2000)               = 0x5555556f2000
31557 brk(0x5555556dc000)               = 0x5555556dc000
31557 exit_group(-1)                    = ?
31556 <... select resumed> )            = 1 (out [4], left {21, 278000})
31556 write(4, "\0\0\0\0\0\0\0\0\0\0\0\0Q\332\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4092) = -1 EPIPE (Broken pipe)
31556 --- SIGPIPE (Broken pipe) @ 0 (0) ---
31556 write(2, "rsync: writefd_unbuffered failed"..., 82) = 82
31556 write(2, "\n", 1)                 = 1
31556 rt_sigaction(SIGUSR1, {SIG_IGN}, NULL, 8) = 0
31556 rt_sigaction(SIGUSR2, {SIG_IGN}, NULL, 8) = 0
31556 wait4(31557, 0x7fffea7a594c, WNOHANG, NULL) = 0
31556 getpid()                          = 31556
31556 kill(31557, SIGUSR1)              = 0
31556 kill(31622, SIGUSR1)              = 0
31622 <... select resumed> )            = ? ERESTARTNOHAND (To be restarted)
31622 --- SIGUSR1 (User defined signal 1) @ 0 (0) ---
31556 write(2, "rsync error: error in rsync prot"..., 90 <unfinished ...>
31622 rt_sigaction(SIGUSR1, {SIG_IGN}, NULL, 8) = 0
31622 rt_sigaction(SIGUSR2, {SIG_IGN}, NULL, 8) = 0
31622 wait4(31557, 0x7fffea7a324c, WNOHANG, NULL) = -1 ECHILD (No child processes)
31622 kill(31557, SIGUSR1)              = 0
31622 write(2, "rsync error: received SIGUSR1 (c"..., 72) = 72
31622 write(2, "\n", 1)                 = 1
31622 exit_group(19)                    = ?
31556 <... write resumed> )             = ? ERESTARTSYS (To be restarted)
31556 --- SIGCHLD (Child exited) @ 0 (0) ---
31556 wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 255}], WNOHANG, NULL) = 31557
31556 wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 19}], WNOHANG, NULL) = 31622
31556 wait4(-1, 0x7fffea7a344c, WNOHANG, NULL) = -1 ECHILD (No child processes)
31556 rt_sigreturn(0xffffffffffffffff)  = -1 EINTR (Interrupted system call)
31556 rt_sigaction(SIGUSR1, {SIG_IGN}, NULL, 8) = 0
31556 rt_sigaction(SIGUSR2, {SIG_IGN}, NULL, 8) = 0
31556 wait4(31557, 0x7fffea7a374c, WNOHANG, NULL) = -1 ECHILD (No child processes)
31556 kill(31557, SIGUSR1)              = -1 ESRCH (No such process)
31556 kill(31622, SIGUSR1)              = -1 ESRCH (No such process)
31556 write(2, "rsync error: unexplained error ("..., 73) = 73
31556 write(2, "\n", 1)                 = 1
31556 exit_group(255)                   = ?
[root@blowingrock homeguage]# tail -n 70 /tmp/rsync.log >> strace.txt
[root@blowingrock homeguage]# vi strace.txt
[root@blowingrock homeguage]# man rsync
[root@blowingrock homeguage]# rpm -qa | grep rsync
rsync-2.6.8-1.FC5.1
[root@blowingrock homeguage]# vi strace.txt
31557 exit_group(-1)                    = ?
31556 <... select resumed> )            = 1 (out [4], left {21, 278000})
31556 write(4, "\0\0\0\0\0\0\0\0\0\0\0\0Q\332\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4092) = -1 EPIPE (Broken pipe)
31556 --- SIGPIPE (Broken pipe) @ 0 (0) ---
31556 write(2, "rsync: writefd_unbuffered failed"..., 82) = 82
31556 write(2, "\n", 1)                 = 1
31556 rt_sigaction(SIGUSR1, {SIG_IGN}, NULL, 8) = 0
31556 rt_sigaction(SIGUSR2, {SIG_IGN}, NULL, 8) = 0
31556 wait4(31557, 0x7fffea7a594c, WNOHANG, NULL) = 0
31556 getpid()                          = 31556
31556 kill(31557, SIGUSR1)              = 0
31556 kill(31622, SIGUSR1)              = 0
31622 <... select resumed> )            = ? ERESTARTNOHAND (To be restarted)
31622 --- SIGUSR1 (User defined signal 1) @ 0 (0) ---
31556 write(2, "rsync error: error in rsync prot"..., 90 <unfinished ...>
31622 rt_sigaction(SIGUSR1, {SIG_IGN}, NULL, 8) = 0
31622 rt_sigaction(SIGUSR2, {SIG_IGN}, NULL, 8) = 0
31622 wait4(31557, 0x7fffea7a324c, WNOHANG, NULL) = -1 ECHILD (No child processes)
31622 kill(31557, SIGUSR1)              = 0
31622 write(2, "rsync error: received SIGUSR1 (c"..., 72) = 72
31622 write(2, "\n", 1)                 = 1
31622 exit_group(19)                    = ?
31556 <... write resumed> )             = ? ERESTARTSYS (To be restarted)
31556 --- SIGCHLD (Child exited) @ 0 (0) ---
31556 wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 255}], WNOHANG, NULL) = 31557
31556 wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 19}], WNOHANG, NULL) = 31622
31556 wait4(-1, 0x7fffea7a344c, WNOHANG, NULL) = -1 ECHILD (No child processes)
31556 rt_sigreturn(0xffffffffffffffff)  = -1 EINTR (Interrupted system call)
31556 rt_sigaction(SIGUSR1, {SIG_IGN}, NULL, 8) = 0
31556 rt_sigaction(SIGUSR2, {SIG_IGN}, NULL, 8) = 0
31556 wait4(31557, 0x7fffea7a374c, WNOHANG, NULL) = -1 ECHILD (No child processes)
31556 kill(31557, SIGUSR1)              = -1 ESRCH (No such process)
31556 kill(31622, SIGUSR1)              = -1 ESRCH (No such process)
31556 write(2, "rsync error: unexplained error ("..., 73) = 73
31556 write(2, "\n", 1)                 = 1
31556 exit_group(255)                   = ?


As for the client side the server is RHEL 3 and it hasn't had any major updates and rsync isn't being used on it's end.
Comment 1 Wayne Davison 2008-01-12 11:45:40 UTC
All I see in the strace info is rsync complaining about the connection closing. You'll need to figure out why the connection is closing, perhaps using hints from the issues-and-debugging web page on the rsync website.

If you have further info to provide, please feel free to reopen this.