Inherits RamCache.
Public Member Functions | |
int | get (INK_MD5 *key, Ptr< IOBufferData > *ret_data, uint32_t auxkey1=0, uint32_t auxkey2=0) |
int | put (INK_MD5 *key, IOBufferData *data, uint32_t len, bool copy=false, uint32_t auxkey1=0, uint32_t auxkey2=0) |
int | fixup (INK_MD5 *key, uint32_t old_auxkey1, uint32_t old_auxkey2, uint32_t new_auxkey1, uint32_t new_auxkey2) |
void | init (int64_t max_bytes, Vol *vol) |
Que (RamCacheLRUEntry, lru_link) lru | |
DList (RamCacheLRUEntry, hash_link)*bucket | |
void | resize_hashtable () |
RamCacheLRUEntry * | remove (RamCacheLRUEntry *e) |
RamCacheLRU () | |
Data Fields | |
int64_t | max_bytes |
int64_t | bytes |
int64_t | objects |
uint16_t * | seen |
int | nbuckets |
int | ibuckets |
Vol * | vol |
Definition at line 35 of file RamCacheLRU.cc.
RamCacheLRU::RamCacheLRU | ( | ) | [inline] |
Definition at line 58 of file RamCacheLRU.cc.
RamCacheLRU::DList | ( | RamCacheLRUEntry | , | |
hash_link | ||||
) |
Referenced by resize_hashtable().
int RamCacheLRU::fixup | ( | INK_MD5 * | key, | |
uint32_t | old_auxkey1, | |||
uint32_t | old_auxkey2, | |||
uint32_t | new_auxkey1, | |||
uint32_t | new_auxkey2 | |||
) | [virtual] |
Implements RamCache.
Definition at line 192 of file RamCacheLRU.cc.
References RamCacheLRUEntry::auxkey1, RamCacheLRUEntry::auxkey2, RamCacheLRUEntry::key, max_bytes, nbuckets, and ats::CryptoHash::slice32().
int RamCacheLRU::get | ( | INK_MD5 * | key, | |
Ptr< IOBufferData > * | ret_data, | |||
uint32_t | auxkey1 = 0 , |
|||
uint32_t | auxkey2 = 0 | |||
) | [virtual] |
Implements RamCache.
Definition at line 104 of file RamCacheLRU.cc.
References RamCacheLRUEntry::auxkey1, RamCacheLRUEntry::auxkey2, cache_ram_cache_hits_stat, cache_ram_cache_misses_stat, CACHE_SUM_DYN_STAT_THREAD, RamCacheLRUEntry::data, DDebug, RamCacheLRUEntry::key, max_bytes, nbuckets, and ats::CryptoHash::slice32().
void RamCacheLRU::init | ( | int64_t | max_bytes, | |
Vol * | vol | |||
) | [virtual] |
Implements RamCache.
Definition at line 94 of file RamCacheLRU.cc.
References DDebug, max_bytes, resize_hashtable(), and vol.
int RamCacheLRU::put | ( | INK_MD5 * | key, | |
IOBufferData * | data, | |||
uint32_t | len, | |||
bool | copy = false , |
|||
uint32_t | auxkey1 = 0 , |
|||
uint32_t | auxkey2 = 0 | |||
) | [virtual] |
Implements RamCache.
Definition at line 140 of file RamCacheLRU.cc.
References RamCacheLRUEntry::auxkey1, RamCacheLRUEntry::auxkey2, IOBufferData::block_size(), bytes, cache_config_ram_cache_use_seen_filter, cache_ram_cache_bytes_stat, CACHE_SUM_DYN_STAT_THREAD, RamCacheLRUEntry::data, DDebug, ibuckets, RamCacheLRUEntry::key, max_bytes, nbuckets, objects, ramCacheLRUEntryAllocator, resize_hashtable(), seen, ats::CryptoHash::slice32(), this_ethread(), and THREAD_ALLOC.
RamCacheLRU::Que | ( | RamCacheLRUEntry | , | |
lru_link | ||||
) |
RamCacheLRUEntry * RamCacheLRU::remove | ( | RamCacheLRUEntry * | e | ) |
Definition at line 125 of file RamCacheLRU.cc.
References RamCacheLRUEntry::auxkey1, RamCacheLRUEntry::auxkey2, bytes, cache_ram_cache_bytes_stat, CACHE_SUM_DYN_STAT_THREAD, RamCacheLRUEntry::data, DDebug, RamCacheLRUEntry::key, nbuckets, objects, ramCacheLRUEntryAllocator, ats::CryptoHash::slice32(), this_thread(), and THREAD_FREE.
void RamCacheLRU::resize_hashtable | ( | ) |
Definition at line 69 of file RamCacheLRU.cc.
References ats_free(), ats_malloc(), bucket_sizes, cache_config_ram_cache_use_seen_filter, DDebug, DList(), ibuckets, RamCacheLRUEntry::key, nbuckets, seen, and ats::CryptoHash::slice32().
int64_t RamCacheLRU::bytes |
Definition at line 37 of file RamCacheLRU.cc.
Definition at line 52 of file RamCacheLRU.cc.
Referenced by put(), and resize_hashtable().
int64_t RamCacheLRU::max_bytes |
Definition at line 51 of file RamCacheLRU.cc.
Referenced by fixup(), get(), put(), remove(), and resize_hashtable().
int64_t RamCacheLRU::objects |
Definition at line 38 of file RamCacheLRU.cc.
uint16_t* RamCacheLRU::seen |
Definition at line 48 of file RamCacheLRU.cc.
Referenced by put(), and resize_hashtable().
Definition at line 53 of file RamCacheLRU.cc.
Referenced by init().