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

Function release_index_block

src/jrd/idx.cpp:2144–2172  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2142
2143
2144static void release_index_block(thread_db* tdbb, IndexBlock* index_block)
2145{
2146/**************************************
2147 *
2148 * r e l e a s e _ i n d e x _ b l o c k
2149 *
2150 **************************************
2151 *
2152 * Functional description
2153 * Release index block structure.
2154 *
2155 **************************************/
2156 if (index_block->idb_expression_statement)
2157 {
2158 index_block->idb_expression_statement->release(tdbb);
2159 index_block->idb_expression_statement = nullptr;
2160 }
2161 index_block->idb_expression = nullptr;
2162 index_block->idb_expression_desc.clear();
2163
2164 if (index_block->idb_condition_statement)
2165 {
2166 index_block->idb_condition_statement->release(tdbb);
2167 index_block->idb_condition_statement = nullptr;
2168 }
2169 index_block->idb_condition = nullptr;
2170
2171 LCK_release(tdbb, index_block->idb_lock);
2172}
2173
2174
2175static void signal_index_deletion(thread_db* tdbb, jrd_rel* relation, USHORT id)

Callers 2

index_block_flushFunction · 0.85
signal_index_deletionFunction · 0.85

Calls 3

LCK_releaseFunction · 0.85
releaseMethod · 0.45
clearMethod · 0.45

Tested by

no test coverage detected