#include <I_HostDBProcessor.h>
Public Member Functions | |
int | index_of (sockaddr const *addr) |
Find the index of addr in member info. | |
HostDBInfo * | find_ip (sockaddr const *addr) |
HostDBInfo * | find_target (const char *target) |
HostDBInfo * | select_next (sockaddr const *addr) |
Select the next entry after addr. | |
HostDBInfo * | select_best_http (sockaddr const *client_ip, ink_time_t now, int32_t fail_window) |
HostDBInfo * | select_best_srv (char *target, InkRand *rand, ink_time_t now, int32_t fail_window) |
HostDBRoundRobin () | |
Static Public Member Functions | |
static unsigned | size (unsigned count, unsigned srv_len=0) |
Data Fields | |
short | rrcount |
Total number (to compute space used). | |
short | good |
Number which have not failed a connect. | |
unsigned short | current |
unsigned short | length |
ink_time_t | timed_rr_ctime |
HostDBInfo | info [] |
Definition at line 308 of file I_HostDBProcessor.h.
HostDBRoundRobin::HostDBRoundRobin | ( | ) | [inline] |
Definition at line 344 of file I_HostDBProcessor.h.
HostDBInfo * HostDBRoundRobin::find_ip | ( | sockaddr const * | addr | ) | [inline] |
Definition at line 236 of file P_HostDBProcessor.h.
References index_of(), and info.
Referenced by HttpSM::process_hostdb_info(), and HttpSM::state_mark_os_down().
HostDBInfo * HostDBRoundRobin::find_target | ( | const char * | target | ) | [inline] |
Definition at line 255 of file P_HostDBProcessor.h.
References good, HOST_DB_MAX_ROUND_ROBIN_INFO, info, ink_assert, SRVInfo::key, makeHostHash(), and HostDBInfo::srv.
int HostDBRoundRobin::index_of | ( | sockaddr const * | addr | ) | [inline] |
Find the index of addr in member info.
Definition at line 219 of file P_HostDBProcessor.h.
References ats_ip_addr_eq(), good, HOST_DB_MAX_ROUND_ROBIN_INFO, info, and ink_assert.
Referenced by find_ip(), and select_next().
HostDBInfo * HostDBRoundRobin::select_best_http | ( | sockaddr const * | client_ip, | |
ink_time_t | now, | |||
int32_t | fail_window | |||
) | [inline] |
Definition at line 271 of file P_HostDBProcessor.h.
References HostDBInfo::app, current, Debug, good, HOST_DB_MAX_ROUND_ROBIN_INFO, HOSTDB_CLIENT_IP_HASH(), HostDBProcessor::hostdb_strict_round_robin, HostDBProcessor::hostdb_timed_round_robin, HostDBApplicationInfo::http_data, info, ink_assert, HostDBInfo::ip, HostDBApplicationInfo::http_server_attr::last_failure, memcpy, and timed_rr_ctime.
Referenced by HttpSM::process_hostdb_info().
HostDBInfo * HostDBRoundRobin::select_best_srv | ( | char * | target, | |
InkRand * | rand, | |||
ink_time_t | now, | |||
int32_t | fail_window | |||
) | [inline] |
Definition at line 348 of file P_HostDBProcessor.h.
References HostDBInfo::app, current, HostDBInfo::data, good, HOST_DB_MAX_ROUND_ROBIN_INFO, HostDBApplicationInfo::http_data, info, ink_assert, HostDBApplicationInfo::http_server_attr::last_failure, InkRand::random(), HostDBInfo::srv, SRVInfo::srv_priority, SRVInfo::srv_weight, and HostDBInfo::srvname().
Referenced by HttpSM::process_srv_info().
HostDBInfo * HostDBRoundRobin::select_next | ( | sockaddr const * | addr | ) | [inline] |
Select the next entry after addr.
NULL
if addr wasn't present. Definition at line 242 of file P_HostDBProcessor.h.
References good, index_of(), and info.
Referenced by HttpTransact::OSDNSLookup().
static unsigned HostDBRoundRobin::size | ( | unsigned | count, | |
unsigned | srv_len = 0 | |||
) | [inline, static] |
Definition at line 324 of file I_HostDBProcessor.h.
References INK_ALIGN, and ink_assert.
Referenced by HostDBContinuation::dnsEvent().
unsigned short HostDBRoundRobin::current |
Definition at line 316 of file I_HostDBProcessor.h.
Referenced by HostDBContinuation::dnsEvent(), select_best_http(), select_best_srv(), and ShowHostDB::showLookupDone().
short HostDBRoundRobin::good |
Number which have not failed a connect.
Definition at line 314 of file I_HostDBProcessor.h.
Referenced by HostDBContinuation::dnsEvent(), find_target(), index_of(), HostDBCache::rebuild_callout(), remove_round_robin(), reply_to_cont(), HostDBInfo::rr(), select_best_http(), select_best_srv(), select_next(), and ShowHostDB::showLookupDone().
Definition at line 320 of file I_HostDBProcessor.h.
Referenced by HostDBContinuation::dnsEvent(), do_setby(), find_ip(), find_target(), index_of(), HttpSM::process_hostdb_info(), HostDBCache::rebuild_callout(), remove_round_robin(), restore_info(), select_best_http(), select_best_srv(), select_next(), ShowHostDB::showLookupDone(), and HostDBInfo::srvname().
unsigned short HostDBRoundRobin::length |
Definition at line 317 of file I_HostDBProcessor.h.
Referenced by HostDBContinuation::dnsEvent(), HostDBInfo::heap_size(), and HostDBInfo::srvname().
Total number (to compute space used).
Definition at line 311 of file I_HostDBProcessor.h.
Referenced by HostDBContinuation::dnsEvent(), do_setby(), HttpSM::process_hostdb_info(), HostDBCache::rebuild_callout(), reply_to_cont(), restore_info(), HostDBInfo::rr(), ShowHostDB::showLookupDone(), and HostDBInfo::srvname().
Definition at line 318 of file I_HostDBProcessor.h.
Referenced by select_best_http().