MCPcopy Create free account
hub / github.com/erans/pgsqlite / cache_metadata

Method cache_metadata

src/cache/statement_pool.rs:177–189  ·  view source on GitHub ↗

Cache metadata for a query

(&self, query: String, metadata: StatementMetadata)

Source from the content-addressed store, hash-verified

175
176 /// Cache metadata for a query
177 fn cache_metadata(&self, query: String, metadata: StatementMetadata) {
178 if let Ok(mut statements) = self.statements.lock() {
179 // Evict old entries if we're at capacity
180 if statements.len() >= self.max_size {
181 self.evict_oldest(&mut statements);
182 }
183
184 statements.insert(query.clone(), CachedStatement {
185 metadata,
186 last_used: std::time::Instant::now(),
187 });
188 }
189 }
190
191 /// Extract metadata from a prepared statement
192 fn extract_metadata(&self, stmt: &Statement, query: &str) -> Result<StatementMetadata, rusqlite::Error> {

Callers 1

prepare_and_cacheMethod · 0.80

Calls 4

evict_oldestMethod · 0.80
lenMethod · 0.45
insertMethod · 0.45
cloneMethod · 0.45

Tested by

no test coverage detected