apparently, it must be a bug

if i do

/root/rsync/rsync-3.2.5/rsync -avi --timeout=10 --exclude='/proc'
--exclude='/dev/'  root@172.20.37.189:/ /zfspool/backup/172.20.37.189/

it hangs forever , as soon as rsync tries to traverse the
suspended/hanging /iscsipool on the remote machine


if i do
/root/rsync/rsync-3.2.5/rsync -avi --timeout=10 --exclude='/proc'
--exclude='/dev/'  root@172.20.37.189:/iscsipool
/zfspool/backup/172.20.37.189/

i.e. if i try to rsync the "hung/stalled" directory directly,  i'm
getting proper timeout behaviour:


receiving incremental file list
[Receiver] io timeout after 10 seconds -- exiting
rsync error: timeout in data send/receive (code 30) at io.c(197)
[Receiver=3.2.5]
<proper exit and return to shell>


so, apparently there seem to be circumstances where the timeout
detection is not effective


if i run rsync locally on the machine containing the hung/stalled dir,
it behaves like this:


# rsync -av --timeout=1 --dry-run /iscsipool /tmp
sending incremental file list
[Receiver] io timeout after 1 seconds -- exiting
rsync error: timeout in data send/receive (code 30) at io.c(197)
[Receiver=3.2.3]
<here it hangs forever, never returns to shell , cannot even ^C or ^Z>


regards
roland





root@debian:~# zpool status
  pool: iscsipool
 state: SUSPENDED
status: One or more devices are faulted in response to IO failures.
action: Make sure the affected devices are connected, then run 'zpool
clear'.
   see: https://openzfs.github.io/openzfs-docs/msg/ZFS-8000-HC
config:

    NAME                      STATE     READ WRITE CKSUM
    iscsipool                 UNAVAIL      0     0     0 insufficient
replicas
      wwn-0x3333333333333333  UNAVAIL      4     1     0

errors: No known data errors


Am 01.09.22 um 17:45 schrieb Roland:
there is connection timeout and I/O timeout

i'm using the I/O timeout.

for "--timeout" manpage is "if no data is transferred....then rsync
will exit"

no data is being transferred for hours, but it doesn't exit.

so, what's the problem here ?



       --timeout=SECONDS
              This option allows you to set a maximum I/O timeout in
seconds.  If no data is transferred for the specified time then rsync
will exit.  The default is 0, which means no timeout.

       --contimeout=SECONDS
              This option allows you to set the amount of time that
rsync will wait for its connection to an rsync daemon to succeed.  If
the timeout is reached, rsync exits with an error.




Am 01.09.22 um 17:32 schrieb Kevin Korb via rsync:
You are using rsync over ssh.  The connection timeout (and port)
options don't matter if rsync isn't doing the networking.

On 9/1/22 08:49, Roland via rsync wrote:
hello,

i do some backup via rsync/ssh and pull data from remote machine to
local machine.

whenever on remote machine there is some network attached subdir
getting
"stuck" (i.e. read/write is blocking, eg. by suspended zfs pool because
of error), rsync backup also hangs forever.

i wonder what's the purpose of "--timeout" then.

local machine:  3.1.2
remote machine: 3.2.3

command
rsync -avi --stats --delete --delete-excluded --inplace --numeric-ids
--out-format=%-15i %-15b %-15l %-20M %n%L --timeout=900
--rsync-path=export PATH=/usr/local/bin:$PATH;rsync
--exclude-from=/backup/rsync.exclude.all
--exclude-from=/zfspool/backup/myhost/rsync.exclude root@myhost:/
/zfspool/backup/myhost/backup



what can i do to make this more robust ?

rsync should not hang, as it's getting started via script and the hang
blocks backup of other hosts.


roland





--
Please use reply-all for most replies to avoid omitting the mailing list.
To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync
Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html

Reply via email to