From 9bc050e5814b8d6fc16205d03878270e29a48dfe Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Tue, 9 Sep 2008 16:10:32 -0700 Subject: [PATCH] mds: write objects directory, avoid filer --- src/mds/MDSTable.cc | 21 +++++++++++++-------- src/mds/SessionMap.cc | 22 ++++++++++++++-------- 2 files changed, 27 insertions(+), 16 deletions(-) diff --git a/src/mds/MDSTable.cc b/src/mds/MDSTable.cc index fe5fe79114873..0a5c1d1d24ac4 100644 --- a/src/mds/MDSTable.cc +++ b/src/mds/MDSTable.cc @@ -58,10 +58,13 @@ void MDSTable::save(Context *onfinish, version_t v) // write (async) SnapContext snapc; - mds->filer->write(ino, &layout, snapc, - 0, bl.length(), bl, - 0, - 0, new C_MT_Save(this, version)); + object_t oid(ino, 0); + mds->objecter->write_full(oid, + mds->objecter->osdmap->file_to_object_layout(oid, + g_default_mds_dir_layout), + snapc, + bl, 0, + NULL, new C_MT_Save(this, version)); } void MDSTable::save_2(version_t v) @@ -112,10 +115,12 @@ void MDSTable::load(Context *onfinish) state = STATE_OPENING; C_MT_Load *c = new C_MT_Load(this, onfinish); - mds->filer->read(ino, &layout, CEPH_NOSNAP, - 0, ceph_file_layout_su(layout), - &c->bl, 0, - c); + object_t oid(ino, 0); + mds->objecter->read(oid, + 0, 0, // whole object + mds->objecter->osdmap->file_to_object_layout(oid, + g_default_mds_dir_layout), + &c->bl, 0, c); } void MDSTable::load_2(int r, bufferlist& bl, Context *onfinish) diff --git a/src/mds/SessionMap.cc b/src/mds/SessionMap.cc index a7229753c8e64..a1c41f2d053df 100644 --- a/src/mds/SessionMap.cc +++ b/src/mds/SessionMap.cc @@ -62,10 +62,13 @@ void SessionMap::load(Context *onload) waiting_for_load.push_back(onload); C_SM_Load *c = new C_SM_Load(this); - mds->filer->read(inode.ino, &inode.layout, CEPH_NOSNAP, - 0, ceph_file_layout_su(inode.layout), - &c->bl, 0, - c); + object_t oid(inode.ino, 0); + mds->objecter->read(oid, + 0, 0, // whole object + mds->objecter->osdmap->file_to_object_layout(oid, + g_default_mds_dir_layout), + &c->bl, 0, + c); } @@ -113,10 +116,13 @@ void SessionMap::save(Context *onsave, version_t needv) encode(bl); committing = version; SnapContext snapc; - mds->filer->write(inode.ino, &inode.layout, snapc, - 0, bl.length(), bl, - 0, - 0, new C_SM_Save(this, version)); + object_t oid(inode.ino, 0); + mds->objecter->write_full(oid, + mds->objecter->osdmap->file_to_object_layout(oid, + g_default_mds_dir_layout), + snapc, + bl, 0, + NULL, new C_SM_Save(this, version)); } void SessionMap::_save_finish(version_t v) -- 2.39.5