]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
mds: avoid overlapping release attempts
authorSage Weil <sage@newdream.net>
Tue, 2 Dec 2008 19:45:37 +0000 (11:45 -0800)
committerSage Weil <sage@newdream.net>
Tue, 2 Dec 2008 19:45:37 +0000 (11:45 -0800)
commitf99e0814f8329213333fed3b9e0449d877e313b5
treea46b61344199e703306d613029760170c13caa1c
parent19cdd84c99ba5894c87d1c06196691da7408606e
mds: avoid overlapping release attempts

If the first release attempt is waiting for the log to flush, we
should avoid sending any RELEASED ack until all releases have
flushed.  That is, only the last release will ack.  Keep a counter
in Capability to do this.

Otherwise, we may close out a capability from under a release
that is flushing, and our seq # will be meaningless later in
_finish_release_cap() when we're trying to decide what to do.
src/mds/Capability.h
src/mds/Locker.cc
src/mds/Locker.h