mon/PaxosService: allow paxos service writes while paxos is updating

In commit f985de28f8 I mistakenly made
is_writeable() false while paxos was updating due to a misread of
Paxos::propose_new_value() (I didn't see that it would queue).
This is problematic because it narrows the window during which each service
is writeable for no reason.

Allow service to be writeable both when paxos is active and updating.

Signed-off-by: Sage Weil <sage@inktank.com>
This commit is contained in:
Sage Weil 2013-06-20 15:39:23 -07:00
parent 2d2aa00ed3
commit d31ed95064

View File

@ -559,7 +559,7 @@ public:
*
* - we are not proposing a new version;
* - we are ready to be written to -- i.e., we have a pending value.
* - paxos is writeable
* - paxos is (active or updating)
*
* @returns true if writeable; false otherwise
*/
@ -567,7 +567,7 @@ public:
return
!is_proposing() &&
is_write_ready() &&
paxos->is_writeable();
(paxos->is_active() || paxos->is_updating());
}
/**