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

Function CCH_must_write

src/jrd/cch.cpp:1766–1790  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1764
1765
1766void CCH_must_write(thread_db* tdbb, WIN* window)
1767{
1768/**************************************
1769 *
1770 * C C H _ m u s t _ w r i t e
1771 *
1772 **************************************
1773 *
1774 * Functional description
1775 * Mark a window as "must write".
1776 *
1777 **************************************/
1778 SET_TDBB(tdbb);
1779
1780 BufferDesc* bdb = window->win_bdb;
1781 BLKCHK(bdb, type_bdb);
1782
1783 if (!(bdb->bdb_flags & BDB_marked) || !(bdb->bdb_flags & BDB_dirty)) {
1784 BUGCHECK(208); // msg 208 page not accessed for write
1785 }
1786
1787 bdb->bdb_flags |= BDB_must_write | BDB_dirty;
1788 fb_assert((bdb->bdb_flags & BDB_nbak_state_lock) ||
1789 PageSpace::isTemporary(bdb->bdb_page.getPageSpaceID()));
1790}
1791
1792
1793void CCH_precedence(thread_db* tdbb, WIN* window, ULONG pageNum)

Callers 3

PAG_allocate_pagesFunction · 0.85
ensureDiskSpaceFunction · 0.85
TRA_extend_tipFunction · 0.85

Calls 2

SET_TDBBFunction · 0.85
getPageSpaceIDMethod · 0.80

Tested by

no test coverage detected