From: Sage Weil Date: Tue, 3 Jun 2008 20:13:58 +0000 (-0700) Subject: mds: more scatter fiddling X-Git-Tag: v0.3~170^2~5 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=6e04fdba3add02dcd9fd3c1885696d4691f31897;p=ceph.git mds: more scatter fiddling --- diff --git a/src/TODO b/src/TODO index 4e9f839f9b4..31c93d9ec9c 100644 --- a/src/TODO +++ b/src/TODO @@ -12,6 +12,7 @@ big items - use libuuid userspace client +- handle session STALE - rm -rf on fragmented directory - time out caps, wake up waiters on renewal - link caps with mds session diff --git a/src/mds/Locker.cc b/src/mds/Locker.cc index de3c18e92c7..ca0787a86c7 100644 --- a/src/mds/Locker.cc +++ b/src/mds/Locker.cc @@ -2324,6 +2324,8 @@ void Locker::scatter_writebehind(ScatterLock *lock) pi->version = in->pre_dirty(); lock->get_parent()->finish_scatter_gather_update(lock->get_type()); + lock->clear_updated(); + EUpdate *le = new EUpdate(mds->mdlog, "scatter_writebehind"); predirty_nested(mut, &le->metablob, in, 0, true, false); le->metablob.add_primary_dentry(in->get_parent_dn(), true, 0, pi); @@ -2338,7 +2340,6 @@ void Locker::scatter_writebehind_finish(ScatterLock *lock, Mutation *mut) dout(10) << "scatter_writebehind_finish on " << *lock << " on " << *in << dendl; in->pop_and_dirty_projected_inode(mut->ls); mut->apply(); - lock->clear_updated(); drop_locks(mut); //scatter_eval_gather(lock); }