aboutsummaryrefslogtreecommitdiff
path: root/rcynic
diff options
context:
space:
mode:
authorRob Austein <sra@hactrn.net>2013-06-27 02:16:51 +0000
committerRob Austein <sra@hactrn.net>2013-06-27 02:16:51 +0000
commitd78a6bc4bfedaae528e1f6f6ce0fad6b6bfada35 (patch)
tree757333331ddefb35f6daabe94380b466e95234e4 /rcynic
parent9d3e898bbe429f8220f1b9c4498ea3454588219d (diff)
Report what we're doing before blocking select().
svn path=/trunk/; revision=5419
Diffstat (limited to 'rcynic')
-rw-r--r--rcynic/rcynic.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/rcynic/rcynic.c b/rcynic/rcynic.c
index 404a245f..52182b49 100644
--- a/rcynic/rcynic.c
+++ b/rcynic/rcynic.c
@@ -2591,7 +2591,11 @@ static int rsync_construct_select(const rcynic_ctx_t *rc,
}
}
- if (when && when < now + rc->max_select_time)
+ if (!when)
+ tv->tv_sec = rc->max_select_time;
+ else if (when < now)
+ tv->tv_sec = 0;
+ else if (when < now + rc->max_select_time)
tv->tv_sec = when - now;
else
tv->tv_sec = rc->max_select_time;
@@ -2771,6 +2775,11 @@ static void rsync_mgr(rcynic_ctx_t *rc)
n = rsync_construct_select(rc, now, &rfds, &tv);
+ if (n > 0 && tv.tv_sec)
+ logmsg(rc, log_verbose, "Waiting up to %u seconds for rsync, queued %d, runable %d, running %d, max %d",
+ tv.tv_sec, sk_rsync_ctx_t_num(rc->rsync_queue), rsync_count_runable(rc),
+ rsync_count_running(rc), rc->max_parallel_fetches);
+
if (n > 0) {
#if 0
logmsg(rc, log_debug, "++ select(%d, %u)", n, tv.tv_sec);