From 642408fab21fd022008adaa6abf65ce99aef2c18 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Thu, 3 Sep 2009 15:14:22 -0700 Subject: [PATCH] kclient: send subscribe along with mount request We used to have to wait to learn our address; no more. --- src/kernel/mon_client.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/kernel/mon_client.c b/src/kernel/mon_client.c index 091f3f5b0a2c8..06f13291e847e 100644 --- a/src/kernel/mon_client.c +++ b/src/kernel/mon_client.c @@ -19,11 +19,11 @@ * algorithm to manage the MDS map (mds cluster membership), OSD map, and * list of clients who have mounted the file system. * - * Communication with the monitor cluster is lossy, so requests for - * information may have to be resent if we time out waiting for a response. - * As long as we do not time out, we continue to send all requests to the - * same monitor. If there is a problem, we randomly pick a new monitor from - * the cluster to try. + * We maintain an open, active session with a monitor at all times in order to + * receive timely MDSMap updates. We periodically send a keepalive byte on the + * TCP socket to ensure we detect a failure. If the connection does break, we + * randomly hunt for a new monitor. Once the connection is reestablished, we + * resend any outstanding requests. */ const static struct ceph_connection_operations mon_con_ops; @@ -516,8 +516,8 @@ static void delayed_work(struct work_struct *work) } else { ceph_con_keepalive(monc->con); } - __send_subscribe(monc); } + __send_subscribe(monc); __schedule_delayed(monc); mutex_unlock(&monc->mutex); } -- 2.39.5