]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: create temp collection during mkfs
authorSage Weil <sage@newdream.net>
Mon, 19 Jul 2010 17:44:11 +0000 (10:44 -0700)
committerSage Weil <sage@newdream.net>
Mon, 19 Jul 2010 17:44:11 +0000 (10:44 -0700)
src/osd/OSD.cc
src/osd/osd_types.h

index ac19f73b530ebe03b73409472502753b64036758..6a17d5e413381c4fbf9ac51552c85d3445bf6353 100644 (file)
@@ -101,7 +101,8 @@ static ostream& _prefix(ostream& out, int whoami, OSDMap *osdmap) {
 }
 
 
-const coll_t meta_coll;
+const coll_t meta_coll(coll_t::TYPE_META);
+const coll_t temp_coll(coll_t::TYPE_TEMP);
 
 
 const struct CompatSet::Feature ceph_osd_feature_compat[] = {
@@ -200,6 +201,7 @@ int OSD::mkfs(const char *dev, const char *jdev, ceph_fsid_t fsid, int whoami)
   ObjectStore::Transaction t;
   t.create_collection(meta_coll);
   t.write(meta_coll, OSD_SUPERBLOCK_POBJECT, 0, bl.length(), bl);
+  t.create_collection(temp_coll);
   int r = store->apply_transaction(t);
   store->umount();
   delete store;
index 5d59c291b38a17ff092239f31ba9ea7de7265bf9..8e2caca85f261fec15cf5dba0ca821c473e224fc 100644 (file)
@@ -238,6 +238,7 @@ struct coll_t {
   snapid_t snap;
 
   coll_t() : type(TYPE_META), snap(0) {}
+  coll_t(type_t t) : type(t), snap(0) {}
   coll_t(type_t t, pg_t p, snapid_t s) : type(t), pgid(p), snap(s) {}
   
   static coll_t build_pg_coll(pg_t p) {