]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: log a scrub error when we can't pick an auth object
authorSage Weil <sage@redhat.com>
Fri, 27 Mar 2015 16:34:44 +0000 (09:34 -0700)
committerDavid Zafman <dzafman@redhat.com>
Tue, 4 Aug 2015 14:39:00 +0000 (07:39 -0700)
If we really can't find a suitable auth, log an error.

Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit a476d8f3903ca78b5cf36d63059f13cb5268efe5)

src/osd/PGBackend.cc

index fe3a80dceb92a84e84857f7b45e18a1afb9bfde7..0ba4c24c08560af24c99500a77eb38791f10dc5f 100644 (file)
@@ -571,14 +571,10 @@ void PGBackend::be_compare_scrubmaps(
       be_select_auth_object(*k, maps, okseed, &auth_oi);
     list<pg_shard_t> auth_list;
     if (auth == maps.end()) {
-      // Something is better than nothing
-      // TODO: something is NOT better than nothing, do something like
-      // unfound_lost if no valid copies can be found, or just mark unfound
-      auth = maps.begin();
-      dout(10) << __func__ << ": selecting osd " << auth->first
-              << " for obj " << *k
-              << ", something is better than nothing, FIXME"
-              << dendl;
+      dout(10) << __func__ << ": unable to find any auth object" << dendl;
+      ++shallow_errors;
+      errorstream << __func__ << ": " << pgid << " shard " << j->first
+                 << ": soid failed to pick suitable auth object";
       continue;
     }
     auth_list.push_back(auth->first);