| 81 | /// Cache events for monitoring and debugging |
| 82 | #[derive(Debug, Clone)] |
| 83 | pub enum CacheEvent { |
| 84 | ResultCacheHit { |
| 85 | key: QueryCacheKey, |
| 86 | level: CacheLevel, |
| 87 | saved_time_ms: u64, |
| 88 | timestamp: Instant, |
| 89 | }, |
| 90 | ResultCacheMiss { |
| 91 | key: QueryCacheKey, |
| 92 | timestamp: Instant, |
| 93 | }, |
| 94 | PlanCacheHit { |
| 95 | key: PlanCacheKey, |
| 96 | saved_time_ms: u64, |
| 97 | timestamp: Instant, |
| 98 | }, |
| 99 | PlanCacheMiss { |
| 100 | key: PlanCacheKey, |
| 101 | timestamp: Instant, |
| 102 | }, |
| 103 | Eviction { |
| 104 | cache_type: String, |
| 105 | reason: String, |
| 106 | timestamp: Instant, |
| 107 | }, |
| 108 | Invalidation { |
| 109 | strategy: String, |
| 110 | affected_entries: usize, |
| 111 | timestamp: Instant, |
| 112 | }, |
| 113 | ConfigUpdate { |
| 114 | old_config: String, |
| 115 | new_config: String, |
| 116 | timestamp: Instant, |
| 117 | }, |
| 118 | } |
| 119 | |
| 120 | impl CacheManager { |
| 121 | /// Create new cache manager with configuration |
nothing calls this directly
no outgoing calls
no test coverage detected