| 719 | } |
| 720 | |
| 721 | void TipCache::updateOldestTransaction(thread_db *tdbb, TraNumber oldest, TraNumber oldestSnapshot) |
| 722 | { |
| 723 | // Can only be called on initialized TipCache |
| 724 | fb_assert(m_tpcHeader); |
| 725 | GlobalTpcHeader* header = m_tpcHeader->getHeader(); |
| 726 | |
| 727 | TraNumber oldestNew = MIN(oldest, oldestSnapshot); |
| 728 | TraNumber oldestNow = header->oldest_transaction.load(std::memory_order_relaxed); |
| 729 | if (oldestNew > oldestNow) |
| 730 | { |
| 731 | header->oldest_transaction.store(oldestNew, std::memory_order_relaxed); |
| 732 | releaseSharedMemory(tdbb, oldestNow, oldestNew); |
| 733 | } |
| 734 | } |
| 735 | |
| 736 | int TipCache::tpc_block_blocking_ast(void* arg) |
| 737 | { |
no test coverage detected