
| Data Structures | |
| struct | Entry | 
| Public Types | |
| enum | { MAX_TABLE_ENTRIES = 256, SCAN_INTERVAL = 10 } | 
| Public Member Functions | |
| ClusterVConnectionCache () | |
| void | init () | 
| int | MD5ToIndex (INK_MD5 *p) | 
| int | insert (INK_MD5 *, ClusterVConnection *) | 
| ClusterVConnection * | lookup (INK_MD5 *) | 
| Data Fields | |
| Queue< Entry > | hash_table [MAX_TABLE_ENTRIES] | 
| Ptr< ProxyMutex > | hash_lock [MAX_TABLE_ENTRIES] | 
| Event * | hash_event [MAX_TABLE_ENTRIES] | 
Definition at line 165 of file ClusterCache.cc.
| anonymous enum | 
Definition at line 193 of file ClusterCache.cc.
| ClusterVConnectionCache::ClusterVConnectionCache | ( | ) |  [inline] | 
Definition at line 168 of file ClusterCache.cc.
References hash_event.
| void ClusterVConnectionCache::init | ( | ) | 
Definition at line 227 of file ClusterCache.cc.
References ET_CACHE_CONT_SM, eventProcessor, hash_event, hash_lock, HRTIME_SECONDS, new_ProxyMutex(), SCAN_INTERVAL, and EventProcessor::schedule_in().
Referenced by CacheContinuation::init().
| int ClusterVConnectionCache::insert | ( | INK_MD5 * | key, | |
| ClusterVConnection * | vc | |||
| ) | 
Definition at line 255 of file ClusterCache.cc.
References CLUSTER_INCREMENT_DYN_STAT, CLUSTER_VC_CACHE_INSERT_LOCK_MISSES_STAT, CLUSTER_VC_CACHE_INSERTS_STAT, ClusterVCCacheEntryAlloc, Queue< C, L >::enqueue(), hash_lock, hash_table, ClusterVConnectionCache::Entry::key, MD5ToIndex(), Thread::mutex, MUTEX_TRY_LOCK, this_ethread(), and ClusterVConnectionCache::Entry::vc.
Referenced by CacheContinuation::insert_cache_callback_user(), CacheContinuation::insertCallbackEvent(), and CacheContinuation::remoteOpEvent().
| ClusterVConnection * ClusterVConnectionCache::lookup | ( | INK_MD5 * | key | ) | 
Definition at line 280 of file ClusterCache.cc.
References CLUSTER_INCREMENT_DYN_STAT, CLUSTER_VC_CACHE_LOOKUP_HITS_STAT, CLUSTER_VC_CACHE_LOOKUP_LOCK_MISSES_STAT, CLUSTER_VC_CACHE_LOOKUP_MISSES_STAT, ClusterVCCacheEntryAlloc, hash_lock, hash_table, DLL< C, L >::head, ClusterVConnectionCache::Entry::key, MD5ToIndex(), Thread::mutex, MUTEX_TRY_LOCK, Queue< C, L >::remove(), this_ethread(), and ClusterVConnectionCache::Entry::vc.
Referenced by CacheContinuation::lookupOpenWriteVC().
| int ClusterVConnectionCache::MD5ToIndex | ( | INK_MD5 * | p | ) |  [inline] | 
Definition at line 244 of file ClusterCache.cc.
References ats::CryptoHash::fold(), and MAX_TABLE_ENTRIES.
| Event* ClusterVConnectionCache::hash_event[MAX_TABLE_ENTRIES] | 
Definition at line 199 of file ClusterCache.cc.
Referenced by ClusterVConnectionCache(), and init().
| Ptr<ProxyMutex> ClusterVConnectionCache::hash_lock[MAX_TABLE_ENTRIES] | 
Definition at line 198 of file ClusterCache.cc.
Referenced by ClusterVConnectionCacheEvent::eventHandler(), init(), insert(), and lookup().
| Queue<Entry> ClusterVConnectionCache::hash_table[MAX_TABLE_ENTRIES] | 
Definition at line 197 of file ClusterCache.cc.
Referenced by ClusterVConnectionCacheEvent::eventHandler(), insert(), and lookup().
 1.7.1
 1.7.1