From: Francesco Chemolli Date: Tue, 6 Dec 2011 15:45:18 +0000 (+0100) Subject: Partially reverted change to statHistDeltaPctile. X-Git-Tag: BumpSslServerFirst.take05~12^2~120^2~20 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=3888201e2b8481913bcace012bdeb3a2e608cc4d;p=thirdparty%2Fsquid.git Partially reverted change to statHistDeltaPctile. Changed to c++ linking convention for all functions. --- diff --git a/src/StatHist.cc b/src/StatHist.cc index fa4c7e2695..a6698bc8db 100644 --- a/src/StatHist.cc +++ b/src/StatHist.cc @@ -144,13 +144,13 @@ StatHist::val(int bin) const } double -statHistDeltaMedian(const StatHist * A, const StatHist * B) +statHistDeltaMedian(const StatHist & A, const StatHist & B) { - return A->deltaPctile(*B, 0.5); + return statHistDeltaPctile(A,B, 0.5); } double -StatHist::deltaPctile(const StatHist & B, double pctile) const +statHistDeltaPctile(const StatHist & A, const StatHist & B, double pctile) { int i; int s1 = 0; @@ -158,25 +158,25 @@ StatHist::deltaPctile(const StatHist & B, double pctile) const int a = 0; int b = 0; int I = 0; - int J = capacity; + int J = A.capacity; int K; double f; - assert(capacity == B.capacity); + assert(A.capacity == B.capacity); - int *D = (int *)xcalloc(capacity, sizeof(int)); + int *D = (int *)xcalloc(A.capacity, sizeof(int)); - for (i = 0; i < capacity; ++i) { - D[i] = B.bins[i] - bins[i]; + for (i = 0; i < A.capacity; ++i) { + D[i] = B.bins[i] - A.bins[i]; assert(D[i] >= 0); } - for (i = 0; i < capacity; ++i) + for (i = 0; i < A.capacity; ++i) s1 += D[i]; h = int(s1 * pctile); - for (i = 0; i < capacity; ++i) { + for (i = 0; i < A.capacity; ++i) { J = i; b += D[J]; @@ -206,7 +206,7 @@ StatHist::deltaPctile(const StatHist & B, double pctile) const K = (int) floor(f * (double) (J - I) + I); - return val(K); + return A.val(K); } static void diff --git a/src/StatHist.h b/src/StatHist.h index a2ca9e8744..8f071cac69 100644 --- a/src/StatHist.h +++ b/src/StatHist.h @@ -55,7 +55,6 @@ public: StatHist() : bins(NULL), capacity(0), min(0), max(0), scale(1.0), val_in(NULL), val_out(NULL) {}; StatHist(const StatHist&); - double deltaMedian(const StatHist &B, double pctile) const; void dump(StoreEntry *sentry, StatHistBinDumper * bd); void logInit(int capacity, double min, double max); void enumInit(int last_enum); @@ -66,15 +65,15 @@ private: }; /* StatHist */ -SQUIDCEXTERN void statHistCount(StatHist * H, double val); -SQUIDCEXTERN double statHistDeltaMedian(const StatHist * A, const StatHist * B); -SQUIDCEXTERN double statHistDeltaPctile(const StatHist * A, const StatHist * B, double pctile); -SQUIDCEXTERN void statHistDump(const StatHist * H, StoreEntry * sentry, StatHistBinDumper * bd); -SQUIDCEXTERN void statHistLogInit(StatHist * H, int capacity, double min, double max); -SQUIDCEXTERN void statHistEnumInit(StatHist * H, int last_enum); -SQUIDCEXTERN void statHistIntInit(StatHist * H, int n); -SQUIDCEXTERN StatHistBinDumper statHistEnumDumper; -SQUIDCEXTERN StatHistBinDumper statHistIntDumper; +void statHistCount(StatHist * H, double val); +double statHistDeltaMedian(const StatHist & A, const StatHist & B); +double statHistDeltaPctile(const StatHist & A, const StatHist & B, double pctile); +void statHistDump(const StatHist * H, StoreEntry * sentry, StatHistBinDumper * bd); +void statHistLogInit(StatHist * H, int capacity, double min, double max); +void statHistEnumInit(StatHist * H, int last_enum); +void statHistIntInit(StatHist * H, int n); +StatHistBinDumper statHistEnumDumper; +StatHistBinDumper statHistIntDumper; diff --git a/src/snmp_agent.cc b/src/snmp_agent.cc index db88c5976c..ca15da8353 100644 --- a/src/snmp_agent.cc +++ b/src/snmp_agent.cc @@ -573,35 +573,35 @@ snmp_prfProtoFn(variable_list * Var, snint * ErrP) break; case PERF_MEDIAN_HTTP_ALL: - x = statHistDeltaMedian(&l->client_http.all_svc_time, - &f->client_http.all_svc_time); + x = statHistDeltaMedian(l->client_http.all_svc_time, + f->client_http.all_svc_time); break; case PERF_MEDIAN_HTTP_MISS: - x = statHistDeltaMedian(&l->client_http.miss_svc_time, - &f->client_http.miss_svc_time); + x = statHistDeltaMedian(l->client_http.miss_svc_time, + f->client_http.miss_svc_time); break; case PERF_MEDIAN_HTTP_NM: - x = statHistDeltaMedian(&l->client_http.nm_svc_time, - &f->client_http.nm_svc_time); + x = statHistDeltaMedian(l->client_http.nm_svc_time, + f->client_http.nm_svc_time); break; case PERF_MEDIAN_HTTP_HIT: - x = statHistDeltaMedian(&l->client_http.hit_svc_time, - &f->client_http.hit_svc_time); + x = statHistDeltaMedian(l->client_http.hit_svc_time, + f->client_http.hit_svc_time); break; case PERF_MEDIAN_ICP_QUERY: - x = statHistDeltaMedian(&l->icp.query_svc_time, &f->icp.query_svc_time); + x = statHistDeltaMedian(l->icp.query_svc_time, f->icp.query_svc_time); break; case PERF_MEDIAN_ICP_REPLY: - x = statHistDeltaMedian(&l->icp.reply_svc_time, &f->icp.reply_svc_time); + x = statHistDeltaMedian(l->icp.reply_svc_time, f->icp.reply_svc_time); break; case PERF_MEDIAN_DNS: - x = statHistDeltaMedian(&l->dns.svc_time, &f->dns.svc_time); + x = statHistDeltaMedian(l->dns.svc_time, f->dns.svc_time); break; case PERF_MEDIAN_RHR: @@ -613,8 +613,8 @@ snmp_prfProtoFn(variable_list * Var, snint * ErrP) break; case PERF_MEDIAN_HTTP_NH: - x = statHistDeltaMedian(&l->client_http.nh_svc_time, - &f->client_http.nh_svc_time); + x = statHistDeltaMedian(l->client_http.nh_svc_time, + f->client_http.nh_svc_time); break; default: diff --git a/src/stat.cc b/src/stat.cc index 10653b9976..7de2de1838 100644 --- a/src/stat.cc +++ b/src/stat.cc @@ -1091,16 +1091,16 @@ GetAvgStat(Mgr::IntervalActionData& stats, int minutes, int hours) stats.client_http_kbytes_in = XAVG(client_http.kbytes_in.kb); stats.client_http_kbytes_out = XAVG(client_http.kbytes_out.kb); - stats.client_http_all_median_svc_time = statHistDeltaMedian(&l->client_http.all_svc_time, - &f->client_http.all_svc_time) / 1000.0; - stats.client_http_miss_median_svc_time = statHistDeltaMedian(&l->client_http.miss_svc_time, - &f->client_http.miss_svc_time) / 1000.0; - stats.client_http_nm_median_svc_time = statHistDeltaMedian(&l->client_http.nm_svc_time, - &f->client_http.nm_svc_time) / 1000.0; - stats.client_http_nh_median_svc_time = statHistDeltaMedian(&l->client_http.nh_svc_time, - &f->client_http.nh_svc_time) / 1000.0; - stats.client_http_hit_median_svc_time = statHistDeltaMedian(&l->client_http.hit_svc_time, - &f->client_http.hit_svc_time) / 1000.0; + stats.client_http_all_median_svc_time = statHistDeltaMedian(l->client_http.all_svc_time, + f->client_http.all_svc_time) / 1000.0; + stats.client_http_miss_median_svc_time = statHistDeltaMedian(l->client_http.miss_svc_time, + f->client_http.miss_svc_time) / 1000.0; + stats.client_http_nm_median_svc_time = statHistDeltaMedian(l->client_http.nm_svc_time, + f->client_http.nm_svc_time) / 1000.0; + stats.client_http_nh_median_svc_time = statHistDeltaMedian(l->client_http.nh_svc_time, + f->client_http.nh_svc_time) / 1000.0; + stats.client_http_hit_median_svc_time = statHistDeltaMedian(l->client_http.hit_svc_time, + f->client_http.hit_svc_time) / 1000.0; stats.server_all_requests = XAVG(server.all.requests); stats.server_all_errors = XAVG(server.all.errors); @@ -1137,12 +1137,12 @@ GetAvgStat(Mgr::IntervalActionData& stats, int minutes, int hours) stats.icp_q_kbytes_recv = XAVG(icp.q_kbytes_recv.kb); stats.icp_r_kbytes_recv = XAVG(icp.r_kbytes_recv.kb); - stats.icp_query_median_svc_time = statHistDeltaMedian(&l->icp.query_svc_time, - &f->icp.query_svc_time) / 1000000.0; - stats.icp_reply_median_svc_time = statHistDeltaMedian(&l->icp.reply_svc_time, - &f->icp.reply_svc_time) / 1000000.0; - stats.dns_median_svc_time = statHistDeltaMedian(&l->dns.svc_time, - &f->dns.svc_time) / 1000.0; + stats.icp_query_median_svc_time = statHistDeltaMedian(l->icp.query_svc_time, + f->icp.query_svc_time) / 1000000.0; + stats.icp_reply_median_svc_time = statHistDeltaMedian(l->icp.reply_svc_time, + f->icp.reply_svc_time) / 1000000.0; + stats.dns_median_svc_time = statHistDeltaMedian(l->dns.svc_time, + f->dns.svc_time) / 1000.0; stats.unlink_requests = XAVG(unlink.requests); stats.page_faults = XAVG(page_faults); @@ -1151,7 +1151,7 @@ GetAvgStat(Mgr::IntervalActionData& stats, int minutes, int hours) stats.average_select_fd_period = f->select_fds > l->select_fds ? (f->select_time - l->select_time) / (f->select_fds - l->select_fds) : 0.0; - stats.median_select_fds = statHistDeltaMedian(&l->select_fds_hist, &f->select_fds_hist); + stats.median_select_fds = statHistDeltaMedian(l->select_fds_hist, f->select_fds_hist); stats.swap_outs = XAVG(swap.outs); stats.swap_ins = XAVG(swap.ins); stats.swap_files_cleaned = XAVG(swap.files_cleaned); @@ -1873,31 +1873,31 @@ statPctileSvc(double pctile, int interval, int which) switch (which) { case PCTILE_HTTP: - x = l->client_http.all_svc_time.deltaPctile(f->client_http.all_svc_time, pctile); + x = statHistDeltaPctile(l->client_http.all_svc_time,f->client_http.all_svc_time, pctile); break; case PCTILE_HIT: - x = l->client_http.hit_svc_time.deltaPctile(f->client_http.hit_svc_time, pctile); + x = statHistDeltaPctile(l->client_http.hit_svc_time,f->client_http.hit_svc_time, pctile); break; case PCTILE_MISS: - x = l->client_http.miss_svc_time.deltaPctile(f->client_http.miss_svc_time, pctile); + x = statHistDeltaPctile(l->client_http.miss_svc_time,f->client_http.miss_svc_time, pctile); break; case PCTILE_NM: - x = l->client_http.nm_svc_time.deltaPctile(f->client_http.nm_svc_time, pctile); + x = statHistDeltaPctile(l->client_http.nm_svc_time,f->client_http.nm_svc_time, pctile); break; case PCTILE_NH: - x = l->client_http.nh_svc_time.deltaPctile(f->client_http.nh_svc_time, pctile); + x = statHistDeltaPctile(l->client_http.nh_svc_time,f->client_http.nh_svc_time, pctile); break; case PCTILE_ICP_QUERY: - x = l->icp.query_svc_time.deltaPctile(f->icp.query_svc_time, pctile); + x = statHistDeltaPctile(l->icp.query_svc_time,f->icp.query_svc_time, pctile); break; case PCTILE_DNS: - x = l->dns.svc_time.deltaPctile(f->dns.svc_time, pctile); + x = statHistDeltaPctile(l->dns.svc_time,f->dns.svc_time, pctile); break; default: