// synchronization; otherwise, the primary's state may be more recent
// than replicas after the synchronization.
lock ml(invoke_mutex);
// By acquiring and releasing the invoke_mutex once, we make sure that
// synchronization; otherwise, the primary's state may be more recent
// than replicas after the synchronization.
lock ml(invoke_mutex);
// By acquiring and releasing the invoke_mutex once, we make sure that