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

Method doCommit

src/jrd/extds/InternalDS.cpp:345–367  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

343}
344
345void InternalTransaction::doCommit(FbStatusVector* status, thread_db* tdbb, bool retain)
346{
347 fb_assert(m_transaction);
348
349 if (m_scope == traCommon && m_IntConnection.isCurrent())
350 {
351 if (!retain) {
352 m_transaction = NULL; // release and nullify
353 }
354 }
355 else
356 {
357 EngineCallbackGuard guard(tdbb, *this, FB_FUNCTION);
358 if (retain)
359 m_transaction->commitRetaining(status);
360 else
361 {
362 m_transaction->commit(status);
363 if (!(status->getState() & IStatus::STATE_ERRORS))
364 m_transaction.clear();
365 }
366 }
367}
368
369void InternalTransaction::doRollback(FbStatusVector* status, thread_db* tdbb, bool retain)
370{

Callers

nothing calls this directly

Calls 5

isCurrentMethod · 0.45
commitRetainingMethod · 0.45
commitMethod · 0.45
getStateMethod · 0.45
clearMethod · 0.45

Tested by

no test coverage detected