libceph: monc hunt rate is 3s with backoff up to 30s

Unless we are in the process of setting up a client (i.e. connecting to
the monitor cluster for the first time), apply a backoff: every time we
want to reopen a session, increase our timeout by a multiple (currently
2); when we complete the connection, reduce that multipler by 50%.

Mirrors ceph.git commit 794c86fd289bd62a35ed14368fa096c46736e9a2.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
This commit is contained in:
Ilya Dryomov
2016-01-21 16:33:19 +01:00
parent 58d81b1294
commit 168b9090c7
3 changed files with 22 additions and 9 deletions

View File

@@ -72,6 +72,9 @@ struct ceph_mon_client {
unsigned long sub_renew_sent;
struct ceph_connection con;
bool had_a_connection;
int hunt_mult; /* [1..CEPH_MONC_HUNT_MAX_MULT] */
/* pending generic requests */
struct rb_root generic_request_tree;
int num_generic_requests;