| 480 | } |
| 481 | |
| 482 | void Applier::rollbackTransaction(thread_db* tdbb, TraNumber traNum, bool cleanup) |
| 483 | { |
| 484 | jrd_tra* transaction = NULL; |
| 485 | if (!m_txnMap.get(traNum, transaction)) |
| 486 | { |
| 487 | if (cleanup) |
| 488 | return; |
| 489 | |
| 490 | raiseError("Transaction %" SQUADFORMAT" is not found", traNum); |
| 491 | } |
| 492 | |
| 493 | LocalThreadContext context(tdbb, transaction); |
| 494 | |
| 495 | TRA_rollback(tdbb, transaction, false, true); |
| 496 | |
| 497 | m_txnMap.remove(traNum); |
| 498 | } |
| 499 | |
| 500 | void Applier::cleanupTransactions(thread_db* tdbb) |
| 501 | { |
no test coverage detected