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

Method enterDtc

src/yvalve/why.cpp:5529–5555  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

5527}
5528
5529YTransaction* YTransaction::enterDtc(CheckStatusWrapper* status)
5530{
5531 try
5532 {
5533 YEntry<YTransaction> entry(status, this);
5534
5535 YTransaction* copy = FB_NEW YTransaction(this);
5536 copy->addRef();
5537 next->addRef(); // We use NoIncr in YTransaction ctor
5538
5539 YAttachment* att = attachment.release();
5540 if (att)
5541 att->childTransactions.remove(this);
5542
5543 removeHandle(&transactions, handle);
5544 next = NULL;
5545 release();
5546
5547 return copy;
5548 }
5549 catch (const Exception& ex)
5550 {
5551 ex.stuffException(status);
5552 }
5553
5554 return NULL;
5555}
5556
5557
5558//-------------------------------------

Callers

nothing calls this directly

Calls 7

removeHandleFunction · 0.85
YTransactionClass · 0.70
releaseFunction · 0.70
addRefMethod · 0.45
releaseMethod · 0.45
removeMethod · 0.45
stuffExceptionMethod · 0.45

Tested by

no test coverage detected