From: Sage Weil Date: Sat, 21 Nov 2009 06:02:38 +0000 (-0800) Subject: mds: clear session before remove_session X-Git-Tag: v0.18~59 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=6d10f068d9d25fb3fdadeace966d52a352c6b50c;p=ceph.git mds: clear session before remove_session remove_session may drop the last ref. --- diff --git a/src/mds/Server.cc b/src/mds/Server.cc index 4be676782034..430b71d2dd7e 100644 --- a/src/mds/Server.cc +++ b/src/mds/Server.cc @@ -288,9 +288,8 @@ void Server::_session_logged(Session *session, bool open, version_t pv, interval else if (session->is_stale_closing()) mds->messenger->mark_down(session->inst.addr); // kill connection mds->sessionmap.set_state(session, Session::STATE_CLOSED); - mds->sessionmap.remove_session(session); - session->clear(); + mds->sessionmap.remove_session(session); } else { // close must have been canceled (by an import?) ... assert(!open);