#include <P_MultiCache.h>
Inherits MultiCacheBase.
Public Member Functions | |
int | get_elementsize () |
MultiCacheBase * | dup () |
void | rebuild_element (int buck, char *elem, RebuildMC &r) |
virtual int | rebuild_callout (C *c, RebuildMC &r) |
virtual void | rebuild_insert_callout (C *c, RebuildMC &r) |
int | level_of_block (C *b) |
bool | match (uint64_t folded_md5, C *block) |
C * | cache_bucket (uint64_t folded_md5, int level) |
C * | insert_block (uint64_t folded_md5, C *new_block, int level) |
void | flush (C *b, int bucket, int level) |
void | delete_block (C *block) |
C * | lookup_block (uint64_t folded_md5, int level) |
void | copy_heap (int paritition, MultiCacheHeapGC *) |
Definition at line 409 of file P_MultiCache.h.
C * MultiCache< C >::cache_bucket | ( | uint64_t | folded_md5, | |
int | level | |||
) | [inline] |
Definition at line 465 of file P_MultiCache.h.
References MultiCacheHeader::buckets, MultiCacheHeader::bucketsize, MultiCacheBase::data, and MultiCacheHeader::level_offset.
Referenced by MultiCache< C >::insert_block(), and MultiCache< C >::lookup_block().
void MultiCache< C >::copy_heap | ( | int | paritition, | |
MultiCacheHeapGC * | gc | |||
) | [inline, virtual] |
Reimplemented from MultiCacheBase.
Definition at line 644 of file P_MultiCache.h.
References MultiCacheBase::buckets_of_partition(), MultiCacheHeader::bucketsize, MultiCacheBase::copy_heap_data(), MultiCacheBase::data, MultiCacheHeader::elements, MultiCacheBase::first_bucket_of_partition(), MultiCacheBase::halfspace_size(), MultiCacheBase::heap, MultiCacheHeader::heap_halfspace, MultiCacheHeader::level_offset, MultiCacheHeader::levels, and MultiCacheBase::ptr().
void MultiCache< C >::delete_block | ( | C * | block | ) | [inline] |
Definition at line 575 of file P_MultiCache.h.
References MultiCacheHeader::bucketsize, MultiCacheBase::data, MultiCacheHeader::elements, MultiCache< C >::level_of_block(), MultiCacheHeader::level_offset, and MultiCacheHeader::levels.
Referenced by HostDBContinuation::insert(), HostDBContinuation::lookup_done(), probe(), remove_round_robin(), and reply_to_cont().
MultiCacheBase* MultiCache< C >::dup | ( | ) | [inline, virtual] |
Reimplemented from MultiCacheBase.
Reimplemented in HostDBCache.
Definition at line 416 of file P_MultiCache.h.
void MultiCache< C >::flush | ( | C * | b, | |
int | bucket, | |||
int | level | |||
) | [inline] |
Definition at line 546 of file P_MultiCache.h.
References MultiCacheHeader::elements, ink_assert, MultiCache< C >::insert_block(), MultiCacheHeader::levels, MultiCacheBase::lowest_level(), REBUILD_FOLDED_MD5, and MultiCacheBase::set_lowest_level().
Referenced by MultiCache< C >::insert_block().
int MultiCache< C >::get_elementsize | ( | ) | [inline, virtual] |
Reimplemented from MultiCacheBase.
Definition at line 411 of file P_MultiCache.h.
C * MultiCache< C >::insert_block | ( | uint64_t | folded_md5, | |
C * | new_block, | |||
int | level | |||
) | [inline] |
Definition at line 475 of file P_MultiCache.h.
References MultiCacheHeader::buckets, MultiCache< C >::cache_bucket(), MultiCacheHeader::elements, MultiCache< C >::flush(), ink_assert, MultiCacheBase::make_tag(), MultiCacheHeader::max_hits, and MultiCacheBase::update().
Referenced by MultiCache< C >::flush(), HostDBContinuation::insert(), and MultiCache< C >::rebuild_element().
int MultiCache< C >::level_of_block | ( | C * | b | ) | [inline] |
Definition at line 455 of file P_MultiCache.h.
References MultiCacheBase::data, and MultiCacheHeader::level_offset.
Referenced by MultiCache< C >::delete_block().
C * MultiCache< C >::lookup_block | ( | uint64_t | folded_md5, | |
int | level | |||
) | [inline] |
Definition at line 593 of file P_MultiCache.h.
References MultiCache< C >::cache_bucket(), MultiCacheHeader::elements, and MultiCacheBase::make_tag().
Referenced by HostDBContinuation::insert(), probe(), and MultiCache< C >::rebuild_element().
bool MultiCache< C >::match | ( | uint64_t | folded_md5, | |
C * | block | |||
) | [inline] |
Definition at line 567 of file P_MultiCache.h.
References MultiCacheBase::make_tag().
virtual int MultiCache< C >::rebuild_callout | ( | C * | c, | |
RebuildMC & | r | |||
) | [inline, virtual] |
Reimplemented in HostDBCache.
Definition at line 423 of file P_MultiCache.h.
Referenced by MultiCache< C >::rebuild_element().
void MultiCache< C >::rebuild_element | ( | int | buck, | |
char * | elem, | |||
RebuildMC & | r | |||
) | [inline, virtual] |
Reimplemented from MultiCacheBase.
Definition at line 619 of file P_MultiCache.h.
References RebuildMC::backed, RebuildMC::corrupt, RebuildMC::deleted, RebuildMC::duplicates, RebuildMC::good, MultiCache< C >::insert_block(), MultiCacheHeader::levels, MultiCache< C >::lookup_block(), MultiCache< C >::rebuild_callout(), REBUILD_FOLDED_MD5, MultiCache< C >::rebuild_insert_callout(), RebuildMC::stale, and RebuildMC::total.
virtual void MultiCache< C >::rebuild_insert_callout | ( | C * | c, | |
RebuildMC & | r | |||
) | [inline, virtual] |
Definition at line 430 of file P_MultiCache.h.
Referenced by MultiCache< C >::rebuild_element().