예제 #1
0
파일: replica_2pc.cpp 프로젝트: Jupige/rDSN
void replica::do_possible_commit_on_primary(mutation_ptr& mu)
{
    dassert (_config.ballot == mu->data.header.ballot, "");
    dassert (PS_PRIMARY == status(), "");

    if (mu->is_ready_for_commit())
    {
        _prepare_list->commit(mu->data.header.decree, COMMIT_ALL_READY);
    }
}
예제 #2
0
void replica::do_possible_commit_on_primary(mutation_ptr& mu)
{
    dassert (_config.ballot == mu->data.header.ballot, "");
    dassert (PS_PRIMARY == status(), "");

    if (mu->is_ready_for_commit(_options.prepare_ack_on_secondary_before_logging_allowed))
    {
        _prepare_list->commit(mu->data.header.decree, false);
    }
}