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

Method cleanupTempData

src/jrd/Savepoint.cpp:407–433  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

405
406
407void Savepoint::cleanupTempData()
408{
409 // Find all global temporary tables with DELETE ROWS action
410 // and release their undo data
411
412 for (VerbAction* action = m_actions; action; action = action->vct_next)
413 {
414 if (action->vct_relation->rel_flags & REL_temp_tran)
415 {
416 RecordBitmap::reset(action->vct_records);
417
418 if (action->vct_undo)
419 {
420 if (action->vct_undo->getFirst())
421 {
422 do
423 {
424 action->vct_undo->current().release(m_transaction);
425 } while (action->vct_undo->getNext());
426 }
427
428 delete action->vct_undo;
429 action->vct_undo = NULL;
430 }
431 }
432 }
433}
434
435Savepoint* Savepoint::rollback(thread_db* tdbb, Savepoint* prior, bool preserveLocks)
436{

Callers 1

TRA_rollbackFunction · 0.80

Calls 5

resetFunction · 0.50
getFirstMethod · 0.45
releaseMethod · 0.45
currentMethod · 0.45
getNextMethod · 0.45

Tested by

no test coverage detected