*
* @param c A callback
*/
- void wait_for_active(Context *c) {
+ void wait_for_active(MonOpRequestRef op, Context *c) {
+ if (op)
+ op->mark_event("paxos:wait_for_active");
waiting_for_active.push_back(c);
}
+ void wait_for_active(Context *c) {
+ MonOpRequestRef o;
+ wait_for_active(o, c);
+ }
/**
* Trim the Paxos state as much as we can.
*
* @param onreadable A callback
*/
- void wait_for_readable(Context *onreadable) {
+ void wait_for_readable(MonOpRequestRef op, Context *onreadable) {
assert(!is_readable());
+ if (op)
+ op->mark_event("paxos:wait_for_readable");
waiting_for_readable.push_back(onreadable);
}
+ void wait_for_readable(Context *onreadable) {
+ MonOpRequestRef o;
+ wait_for_readable(o, onreadable);
+ }
/**
* @}
*/
*
* @param c A callback
*/
- void wait_for_writeable(Context *c) {
+ void wait_for_writeable(MonOpRequestRef op, Context *c) {
assert(!is_writeable());
+ if (op)
+ op->mark_event("paxos:wait_for_writeable");
waiting_for_writeable.push_back(c);
}
+ void wait_for_writeable(Context *c) {
+ MonOpRequestRef o;
+ wait_for_writeable(o, c);
+ }
/**
* Get a transaction to submit operations to propose against