MCPcopy Create free account
hub / github.com/FirebirdSQL/firebird / internalCommit

Method internalCommit

src/remote/client/interface.cpp:1592–1624  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1590
1591
1592void Transaction::internalCommit(CheckStatusWrapper* status)
1593{
1594/**************************************
1595 *
1596 * g d s _ c o m m i t
1597 *
1598 **************************************
1599 *
1600 * Functional description
1601 * Commit a transaction.
1602 *
1603 **************************************/
1604 try
1605 {
1606 reset(status);
1607
1608 CHECK_HANDLE(transaction, isc_bad_trans_handle);
1609
1610 Rdb* rdb = transaction->rtr_rdb;
1611 CHECK_HANDLE(rdb, isc_bad_db_handle);
1612 rem_port* port = rdb->rdb_port;
1613 RefMutexGuard portGuard(*port->port_sync, FB_FUNCTION);
1614
1615 release_object(status, rdb, op_commit, transaction->rtr_id);
1616 REMOTE_cleanup_transaction(transaction);
1617 release_transaction(transaction);
1618 transaction = NULL;
1619 }
1620 catch (const Exception& ex)
1621 {
1622 ex.stuffException(status);
1623 }
1624}
1625
1626
1627void Transaction::commit(CheckStatusWrapper* status)

Callers

nothing calls this directly

Calls 6

CHECK_HANDLEFunction · 0.85
release_objectFunction · 0.85
resetFunction · 0.70
release_transactionFunction · 0.70
stuffExceptionMethod · 0.45

Tested by

no test coverage detected