From: Patrick Donnelly Date: Sat, 9 Jan 2021 22:25:32 +0000 (-0800) Subject: client: add debug messages for osdmap wait X-Git-Tag: v17.0.0~117^2 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=14b4787de14bd5ca1f85850f490ea7e752a15ff8;p=ceph.git client: add debug messages for osdmap wait To help debug i47294. See-also: https://tracker.ceph.com/issues/47294 Signed-off-by: Patrick Donnelly --- diff --git a/qa/suites/fs/volumes/tasks/volumes/overrides.yaml b/qa/suites/fs/volumes/tasks/volumes/overrides.yaml index 9b87c181bf512..ac229b9b3da7c 100644 --- a/qa/suites/fs/volumes/tasks/volumes/overrides.yaml +++ b/qa/suites/fs/volumes/tasks/volumes/overrides.yaml @@ -2,7 +2,7 @@ overrides: ceph: conf: mgr: - debug client: 10 + debug client: 20 log-ignorelist: - OSD full dropping all updates - OSD near full diff --git a/src/client/Client.cc b/src/client/Client.cc index 170bf9a853dfb..3887a8675b1f0 100644 --- a/src/client/Client.cc +++ b/src/client/Client.cc @@ -12163,6 +12163,7 @@ void Client::_setxattr_maybe_wait_for_osdmap(const char *name, const void *value // For setting pool of layout, MetaRequest need osdmap epoch. // There is a race which create a new data pool but client and mds both don't have. // Make client got the latest osdmap which make mds quickly judge whether get newer osdmap. + ldout(cct, 15) << __func__ << ": name = " << name << dendl; if (strcmp(name, "ceph.file.layout.pool") == 0 || strcmp(name, "ceph.dir.layout.pool") == 0 || strcmp(name, "ceph.file.layout") == 0 || strcmp(name, "ceph.dir.layout") == 0) { string rest(strstr(name, "layout")); @@ -12173,7 +12174,9 @@ void Client::_setxattr_maybe_wait_for_osdmap(const char *name, const void *value if (r == -ENOENT) { bs::error_code ec; + ldout(cct, 20) << __func__ << ": waiting for latest osdmap" << dendl; objecter->wait_for_latest_osdmap(ca::use_blocked[ec]); + ldout(cct, 20) << __func__ << ": got latest osdmap: " << ec << dendl; } } }