dovecot-2.2: auth: When receiving SIGUSR2 log also about current...

dovecot at dovecot.org dovecot at dovecot.org
Wed Feb 13 12:24:09 EET 2013


details:   http://hg.dovecot.org/dovecot-2.2/rev/75c686b526d4
changeset: 15762:75c686b526d4
user:      Timo Sirainen <tss at iki.fi>
date:      Wed Feb 13 12:22:22 2013 +0200
description:
auth: When receiving SIGUSR2 log also about current cache usage.

diffstat:

 src/auth/auth-cache.c |  13 +++++++++++--
 1 files changed, 11 insertions(+), 2 deletions(-)

diffs (47 lines):

diff -r ed5fa76f0dc7 -r 75c686b526d4 src/auth/auth-cache.c
--- a/src/auth/auth-cache.c	Mon Feb 11 03:13:45 2013 +0200
+++ b/src/auth/auth-cache.c	Wed Feb 13 12:22:22 2013 +0200
@@ -15,7 +15,7 @@
 	HASH_TABLE(char *, struct auth_cache_node *) hash;
 	struct auth_cache_node *head, *tail;
 
-	size_t size_left;
+	size_t max_size, size_left;
 	unsigned int ttl_secs, neg_ttl_secs;
 
 	unsigned int hit_count, miss_count;
@@ -199,6 +199,7 @@
 {
 	struct auth_cache *cache = context;
 	unsigned int total_count;
+	size_t cache_used;
 
 	total_count = cache->hit_count + cache->miss_count;
 	i_info("Authentication cache hits %u/%u (%u%%)",
@@ -206,10 +207,17 @@
 	       total_count == 0 ? 100 : (cache->hit_count * 100 / total_count));
 
 	i_info("Authentication cache inserts: "
-	       "positive: %u %lluB, negative: %u %lluB",
+	       "positive: %u entries %llu bytes, "
+	       "negative: %u entries %llu bytes",
 	       cache->pos_entries, cache->pos_size,
 	       cache->neg_entries, cache->neg_size);
 
+	cache_used = cache->max_size - cache->size_left;
+	i_info("Authentication cache current size: "
+	       "%"PRIuSIZE_T" bytes used of %"PRIuSIZE_T" bytes (%u%%)",
+	       cache_used, cache->max_size,
+	       (unsigned int)(cache_used * 100ULL / cache->max_size));
+
 	/* reset counters */
 	cache->hit_count = cache->miss_count = 0;
 	cache->pos_entries = cache->neg_entries = 0;
@@ -224,6 +232,7 @@
 
 	cache = i_new(struct auth_cache, 1);
 	hash_table_create(&cache->hash, default_pool, 0, str_hash, strcmp);
+	cache->max_size = max_size;
 	cache->size_left = max_size;
 	cache->ttl_secs = ttl_secs;
 	cache->neg_ttl_secs = neg_ttl_secs;


More information about the dovecot-cvs mailing list