From c4cfa1ee86d30d432d711d1f498fa3d6f1a2360d Mon Sep 17 00:00:00 2001 From: Adam Dickmeiss Date: Tue, 28 May 2013 10:18:54 +0200 Subject: [PATCH] session/client counting utils to header --- src/client.c | 9 +-------- src/client.h | 1 + src/http_command.c | 2 -- src/session.c | 14 -------------- src/session.h | 1 + 5 files changed, 3 insertions(+), 24 deletions(-) diff --git a/src/client.c b/src/client.c index a7649b4..662937f 100644 --- a/src/client.c +++ b/src/client.c @@ -90,14 +90,7 @@ static int client_use(int delta) int clients_count(void) { - int total = 0; - if (g_mutex) - { - yaz_mutex_enter(g_mutex); - total = no_clients; - yaz_mutex_leave(g_mutex); - } - return total; + return client_use(0); } /** \brief Represents client state for a connection to one search target */ diff --git a/src/client.h b/src/client.h index 64fcafc..550eabe 100644 --- a/src/client.h +++ b/src/client.h @@ -40,6 +40,7 @@ enum client_state Client_Disconnected }; +int clients_count(void); int client_show_raw_begin(struct client *cl, int position, const char *syntax, const char *esn, void *data, diff --git a/src/http_command.c b/src/http_command.c index 3ab415c..474a8a2 100644 --- a/src/http_command.c +++ b/src/http_command.c @@ -687,8 +687,6 @@ static void cmd_session_status(struct http_channel *c) release_session(c, s); } -int sessions_count(void); -int clients_count(void); #ifdef HAVE_RESULTSETS_COUNT int resultsets_count(void); #else diff --git a/src/session.c b/src/session.c index 00af02f..b0fbfa1 100644 --- a/src/session.c +++ b/src/session.c @@ -97,7 +97,6 @@ struct client_list { /* session counting (1) , disable client counting (0) */ static YAZ_MUTEX g_session_mutex = 0; static int no_sessions = 0; -static int no_session_total = 0; static int session_use(int delta) { @@ -106,8 +105,6 @@ static int session_use(int delta) yaz_mutex_create(&g_session_mutex); yaz_mutex_enter(g_session_mutex); no_sessions += delta; - if (delta > 0) - no_session_total += delta; sessions = no_sessions; yaz_mutex_leave(g_session_mutex); yaz_log(YLOG_DEBUG, "%s sessions=%d", delta == 0 ? "" : (delta > 0 ? "INC" : "DEC"), no_sessions); @@ -119,17 +116,6 @@ int sessions_count(void) return session_use(0); } -int session_count_total(void) -{ - int total = 0; - if (!g_session_mutex) - return 0; - yaz_mutex_enter(g_session_mutex); - total = no_session_total; - yaz_mutex_leave(g_session_mutex); - return total; -} - static void log_xml_doc(xmlDoc *doc) { FILE *lf = yaz_log_file(); diff --git a/src/session.h b/src/session.h index d51f5bb..732efbc 100644 --- a/src/session.h +++ b/src/session.h @@ -157,6 +157,7 @@ struct hitsbytarget { struct hitsbytarget *get_hitsbytarget(struct session *s, int *count, NMEM nmem); struct session *new_session(NMEM nmem, struct conf_service *service, unsigned session_id); +int sessions_count(void); void session_destroy(struct session *s); void session_init_databases(struct session *s); void statistics(struct session *s, struct statistics *stat); -- 1.7.10.4