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

Function restart_requests

src/jrd/tra.cpp:2541–2574  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2539
2540
2541static void restart_requests(thread_db* tdbb, jrd_tra* trans)
2542{
2543/**************************************
2544 *
2545 * r e s t a r t _ r e q u e s t s
2546 *
2547 **************************************
2548 *
2549 * Functional description
2550 * Restart all requests in the current
2551 * attachment to utilize the passed
2552 * transaction.
2553 *
2554 **************************************/
2555 SET_TDBB(tdbb);
2556
2557 for (Request** i = trans->tra_attachment->att_requests.begin();
2558 i != trans->tra_attachment->att_requests.end();
2559 ++i)
2560 {
2561 Array<Request*>& requests = (*i)->getStatement()->requests;
2562
2563 for (Request** j = requests.begin(); j != requests.end(); ++j)
2564 {
2565 Request* request = *j;
2566
2567 if (request && request->req_transaction)
2568 {
2569 EXE_unwind(tdbb, request);
2570 EXE_start(tdbb, request, trans);
2571 }
2572 }
2573 }
2574}
2575
2576
2577static void retain_context(thread_db* tdbb, jrd_tra* transaction, bool commit, int state)

Callers 1

transaction_startFunction · 0.85

Calls 6

SET_TDBBFunction · 0.85
EXE_unwindFunction · 0.85
EXE_startFunction · 0.85
beginMethod · 0.45
endMethod · 0.45
getStatementMethod · 0.45

Tested by

no test coverage detected