]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
ReplicatedPG::wait_for_unreadable_object: use prep_object_replica_pushes instead...
authorSamuel Just <sjust@redhat.com>
Sat, 10 Jan 2015 01:00:17 +0000 (17:00 -0800)
committerSamuel Just <sjust@redhat.com>
Fri, 30 Jan 2015 19:33:24 +0000 (11:33 -0800)
Signed-off-by: Samuel Just <sjust@redhat.com>
src/osd/ReplicatedPG.cc

index 576e646615f8c7feae2069b889aa84aead99c56f..2332cd2c4fc9582a56cfc5af18a7a1479c87896f 100644 (file)
@@ -423,7 +423,11 @@ void ReplicatedPG::wait_for_unreadable_object(
   } else {
     dout(7) << "missing " << soid << " v " << v << ", recovering." << dendl;
     PGBackend::RecoveryHandle *h = pgbackend->open_recovery_op();
-    recover_missing(soid, v, cct->_conf->osd_client_op_priority, h);
+    if (is_missing_object(soid)) {
+      recover_missing(soid, v, cct->_conf->osd_client_op_priority, h);
+    } else {
+      prep_object_replica_pushes(soid, v, h);
+    }
     pgbackend->run_recovery_op(h, cct->_conf->osd_client_op_priority);
   }
   waiting_for_unreadable_object[soid].push_back(op);