439
438
CommitOrder co(*trx, co_mode_);
441
440
gu_trace(apply_monitor_.enter(ao));
442
gu_trace(apply_trx_ws(recv_ctx, apply_cb_, rollback_cb_, *trx));
441
gu_trace(apply_trx_ws(recv_ctx, apply_cb_, commit_cb_, *trx));
443
442
// at this point any exception in apply_trx_ws() is fatal, not
445
444
if (gu_likely(co_mode_ != CommitOrder::BYPASS))
447
446
gu_trace(commit_monitor_.enter(co));
450
450
gu_throw_fatal << "Commit failed. Trx: " << trx;
452
452
commit_monitor_.leave(co);
457
458
gu_throw_fatal << "Commit failed. Trx: " << trx;
459
460
apply_monitor_.leave(ao);