命令处理流程:
void Monitor::dispatch_op(MonOpRequestRef op) //根据消息的数据类型调用不同的PaxosService::dispatch_op()
|
| MSG_MON_COMMAND //MonmapMonitor类型的消息
|
void Monitor::handle_command(MonOpRequestRef op)
|
|
|
bool PaxosService::dispatch(MonOpRequestRef op)
|
|
|
如果是查询命令bool MonmapMonitor::preprocess_query(MonOpRequestRef op) //返回
|
bool MonmapMonitor::prepare_update(MonOpRequestRef op)
|
|MSG_MON_COMMAND :bool MonmapMonitor::prepare_command(MonOpRequestRef op)
|MSG_MON_JOIN : bool MonmapMonitor::prepa
void Monitor::dispatch_op(MonOpRequestRef op) //根据消息的数据类型调用不同的PaxosService::dispatch_op()
|
| MSG_MON_COMMAND //MonmapMonitor类型的消息
|
void Monitor::handle_command(MonOpRequestRef op)
|
|
|
bool PaxosService::dispatch(MonOpRequestRef op)
|
|
|
如果是查询命令bool MonmapMonitor::preprocess_query(MonOpRequestRef op) //返回
|
bool MonmapMonitor::prepare_update(MonOpRequestRef op)
|
|MSG_MON_COMMAND :bool MonmapMonitor::prepare_command(MonOpRequestRef op)
|MSG_MON_JOIN : bool MonmapMonitor::prepa