]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
mon: set next commit in mon command replies
authorSage Weil <sage@inktank.com>
Thu, 9 Jan 2014 22:44:49 +0000 (14:44 -0800)
committerSage Weil <sage@inktank.com>
Thu, 9 Jan 2014 22:44:49 +0000 (14:44 -0800)
commit8c5c55c8b47ee3c94c0dbcd82e0588ae629ba0ea
treea003440404057ae93036012537e0fe1b3ecc92cc
parent7a89c678a22ada440cc2f12a52be01557063a703
mon: set next commit in mon command replies

The mon command acks include a version that is used by the client to
determine which version of the map they need to get or wait for in order
to see the effects of their command.  Current we are returning
get_last_committed() everywhere, but we are about to commit something (and
waiting for it), which will increase that value by one.  As a result,
clients are always getting epoch/version-1 instead of epoch.

This manifested by a LibRadosTier.Promote test that failed becaues the
OSD had the OSDMap updates adding the tier and overlay but not the final
map change that set the cache-mode to writeback.  I suspect this is also
the cause of of spurious errors in the past where we've seen misdirected
request errors that made no sense.

Backport: emperor, dumpling
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Joao Eduardo Luis <joao@inktank.com>
src/mon/AuthMonitor.cc
src/mon/LogMonitor.cc
src/mon/MDSMonitor.cc
src/mon/MonmapMonitor.cc
src/mon/OSDMonitor.cc
src/mon/PGMonitor.cc