]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
client: add debug messages for osdmap wait 38836/head
authorPatrick Donnelly <pdonnell@redhat.com>
Sat, 9 Jan 2021 22:25:32 +0000 (14:25 -0800)
committerPatrick Donnelly <pdonnell@redhat.com>
Mon, 11 Jan 2021 05:11:06 +0000 (21:11 -0800)
To help debug i47294.

See-also: https://tracker.ceph.com/issues/47294
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
qa/suites/fs/volumes/tasks/volumes/overrides.yaml
src/client/Client.cc

index 9b87c181bf512a5beda7e3a713ff877b8cdfea07..ac229b9b3da7ce25ef4dda6ed324d8b166650cdc 100644 (file)
@@ -2,7 +2,7 @@ overrides:
   ceph:
     conf:
       mgr:
-        debug client: 10
+        debug client: 20
     log-ignorelist:
       - OSD full dropping all updates
       - OSD near full
index 170bf9a853dfbdf10febbf2acd6b85f806e9ce96..3887a8675b1f0851557108ac93a1994e349b46f3 100644 (file)
@@ -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;
     }
   }
 }