From 152a0194e736e073d96fedd980b976cc1f1d4df8 Mon Sep 17 00:00:00 2001 From: Vijay Bellur Date: Sat, 10 Mar 2012 17:22:55 +0530 Subject: Print non-zero timestamps in statedump Change-Id: I686842bc0934128b825828066f613c2a6280ceb9 BUG: 801689 Reviewed-on: http://review.gluster.com/2912 Tested-by: Gluster Build System Reviewed-by: Amar Tumballi Reviewed-by: Vijay Bellur --- xlators/cluster/dht/src/dht.c | 5 ++++- xlators/performance/io-cache/src/io-cache.c | 13 ++++++++----- xlators/performance/quick-read/src/quick-read.c | 12 +++++++----- 3 files changed, 19 insertions(+), 11 deletions(-) diff --git a/xlators/cluster/dht/src/dht.c b/xlators/cluster/dht/src/dht.c index 96382bf16..f73600d7b 100644 --- a/xlators/cluster/dht/src/dht.c +++ b/xlators/cluster/dht/src/dht.c @@ -144,7 +144,10 @@ dht_priv_dump (xlator_t *this) conf->du_stats->avail_inodes); gf_proc_dump_write("du_stats.log", "%lu", conf->du_stats->log); } - gf_proc_dump_write("last_stat_fetch", "%s", ctime(&conf->last_stat_fetch.tv_sec)); + + if (conf->last_stat_fetch.tv_sec) + gf_proc_dump_write("last_stat_fetch", "%s", + ctime(&conf->last_stat_fetch.tv_sec)); UNLOCK(&conf->subvolume_lock); diff --git a/xlators/performance/io-cache/src/io-cache.c b/xlators/performance/io-cache/src/io-cache.c index 329668230..78c8b14bf 100644 --- a/xlators/performance/io-cache/src/io-cache.c +++ b/xlators/performance/io-cache/src/io-cache.c @@ -1834,12 +1834,15 @@ __ioc_cache_dump (ioc_inode_t *ioc_inode, char *prefix) table = ioc_inode->table; - tm = localtime (&ioc_inode->cache.tv.tv_sec); - strftime (timestr, 256, "%Y-%m-%d %H:%M:%S", tm); - snprintf (timestr + strlen (timestr), 256 - strlen (timestr), - ".%"GF_PRI_SUSECONDS, ioc_inode->cache.tv.tv_usec); + if (ioc_inode->cache.tv.tv_sec) { + tm = localtime (&ioc_inode->cache.tv.tv_sec); + strftime (timestr, 256, "%Y-%m-%d %H:%M:%S", tm); + snprintf (timestr + strlen (timestr), 256 - strlen (timestr), + ".%"GF_PRI_SUSECONDS, ioc_inode->cache.tv.tv_usec); - gf_proc_dump_write ("last-cache-validation-time", "%s", timestr); + gf_proc_dump_write ("last-cache-validation-time", "%s", + timestr); + } for (offset = 0; offset < ioc_inode->ia_size; offset += table->page_size) { diff --git a/xlators/performance/quick-read/src/quick-read.c b/xlators/performance/quick-read/src/quick-read.c index a64e63de4..1d682b62d 100644 --- a/xlators/performance/quick-read/src/quick-read.c +++ b/xlators/performance/quick-read/src/quick-read.c @@ -3164,12 +3164,14 @@ qr_inodectx_dump (xlator_t *this, inode_t *inode) gf_proc_dump_write ("entire-file-cached", "%s", qr_inode->xattr ? "yes" : "no"); - tm = localtime (&qr_inode->tv.tv_sec); - strftime (buf, 256, "%Y-%m-%d %H:%M:%S", tm); - snprintf (buf + strlen (buf), 256 - strlen (buf), - ".%"GF_PRI_SUSECONDS, qr_inode->tv.tv_usec); + if (qr_inode->tv.tv_sec) { + tm = localtime (&qr_inode->tv.tv_sec); + strftime (buf, 256, "%Y-%m-%d %H:%M:%S", tm); + snprintf (buf + strlen (buf), 256 - strlen (buf), + ".%"GF_PRI_SUSECONDS, qr_inode->tv.tv_usec); - gf_proc_dump_write ("last-cache-validation-time", "%s", buf); + gf_proc_dump_write ("last-cache-validation-time", "%s", buf); + } ret = 0; out: -- cgit