]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: adjust generate_backlog assertions
authorSage Weil <sage@newdream.net>
Mon, 26 Jan 2009 20:42:14 +0000 (12:42 -0800)
committerSage Weil <sage@newdream.net>
Tue, 27 Jan 2009 00:21:48 +0000 (16:21 -0800)
We should never generate a backlog while active.

src/osd/OSD.cc

index ed5ab2ad266d1a3a2f1dbd3a20db9f1362d648ea..628deaa53d9181bd19118045e7ad0e92c41a98eb 100644 (file)
@@ -3140,7 +3140,8 @@ void OSD::generate_backlog(PG *pg)
 {
   pg->lock();
   dout(10) << *pg << " generate_backlog" << dendl;
-  
+  assert(!pg->is_active());
+
   map<eversion_t,PG::Log::Entry> omap;
   if (!pg->build_backlog_map(omap))
     goto out;
@@ -3156,6 +3157,7 @@ void OSD::generate_backlog(PG *pg)
     dout(10) << *pg << " generate_backlog aborting" << dendl;
     goto out2;
   }
+  assert(!pg->is_active());
 
   if (!pg->is_primary()) {
     dout(10) << *pg << "  sending info+missing+backlog to primary" << dendl;
@@ -3166,7 +3168,6 @@ void OSD::generate_backlog(PG *pg)
     messenger->send_message(m, osdmap->get_inst(pg->get_primary()));
   } else {
     dout(10) << *pg << "  generated backlog, peering" << dendl;
-    assert(!pg->is_active());
 
     map< int, map<pg_t,PG::Query> > query_map;    // peer -> PG -> get_summary_since
     ObjectStore::Transaction t;