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

Method addRefConditional

src/jrd/cch.cpp:5204–5219  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

5202
5203
5204bool BufferDesc::addRefConditional(thread_db* tdbb, SyncType syncType)
5205{
5206 if (!bdb_syncPage.lockConditional(syncType, FB_FUNCTION))
5207 return false;
5208
5209 ++bdb_use_count;
5210
5211 if (syncType == SYNC_EXCLUSIVE)
5212 {
5213 bdb_exclusive = tdbb;
5214 ++bdb_writers;
5215 }
5216
5217 tdbb->registerBdb(this);
5218 return true;
5219}
5220
5221
5222void BufferDesc::downgrade(SyncType syncType)

Callers 3

CCH_clean_pageFunction · 0.80
down_gradeFunction · 0.80
get_oldest_bufferFunction · 0.80

Calls 2

registerBdbMethod · 0.80
lockConditionalMethod · 0.45

Tested by

no test coverage detected