From: Sage Weil Date: Fri, 19 Dec 2014 19:50:38 +0000 (-0800) Subject: librados: watch_flush() on shutdown X-Git-Tag: v0.91~13 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=93825bf05aef4db1d1c86f64aa2e64719f3e6684;p=ceph.git librados: watch_flush() on shutdown Users can easily forget this. It makes shutdown potentially block, but if they have racing callbacks they get what they ask for. Signed-off-by: Sage Weil (cherry picked from commit 30678f6daf0a71b6074c061c6b4aec6386372368) --- diff --git a/src/librados/RadosClient.cc b/src/librados/RadosClient.cc index c2986fb4332c..a5b89a07960b 100644 --- a/src/librados/RadosClient.cc +++ b/src/librados/RadosClient.cc @@ -282,6 +282,9 @@ int librados::RadosClient::connect() void librados::RadosClient::shutdown() { + // make sure watch callbacks are flushed + watch_flush(); + lock.Lock(); if (state == DISCONNECTED) { lock.Unlock();