summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVarun Shastry <vshastry@redhat.com>2012-09-10 11:08:01 +0530
committerVijay Bellur <vbellur@redhat.com>2012-09-17 22:35:58 -0700
commit9289f4be460e910189f553fe2b63e6e3aabe5b27 (patch)
tree08d21e2974d00bd7f33f85479c427721f396d465
parentf7342ad3a91ac5140e9c24e20007519847f4f4ec (diff)
CLI: Displaying time as N/A when unix time is 0
Problem: 'volume top open' command was displaying '1970-01-01 00:00:00.000000' when no file has opened yet. Fix: Made the fix in gf_time_fmt() to make it more generic according to patchset 1 review comment. Change-Id: I748ed203bd0d9fbaac94b5b51ed708b34fccd434 BUG: 852000 Signed-off-by: Varun Shastry <vshastry@redhat.com> Reviewed-on: http://review.gluster.org/3924 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Kaleb KEITHLEY <kkeithle@redhat.com> Reviewed-by: Kaushal M <kaushal@redhat.com> Reviewed-by: Vijay Bellur <vbellur@redhat.com>
-rw-r--r--libglusterfs/src/common-utils.h4
-rw-r--r--xlators/debug/io-stats/src/io-stats.c7
2 files changed, 6 insertions, 5 deletions
diff --git a/libglusterfs/src/common-utils.h b/libglusterfs/src/common-utils.h
index 7e91457177f..5968cd0608d 100644
--- a/libglusterfs/src/common-utils.h
+++ b/libglusterfs/src/common-utils.h
@@ -449,10 +449,10 @@ gf_time_fmt (char *dst, size_t sz_dst, time_t utime, unsigned int fmt)
if (timefmt_last == -1)
_gf_timestuff (&timefmt_last, &fmts, &zeros);
if (timefmt_last < fmt) fmt = gf_timefmt_default;
- if (gmtime_r (&utime, &tm) != NULL) {
+ if (utime && gmtime_r (&utime, &tm) != NULL) {
strftime (dst, sz_dst, fmts[fmt], &tm);
} else {
- strncpy (dst, zeros[fmt], sz_dst);
+ strncpy (dst, "N/A", sz_dst);
}
}
diff --git a/xlators/debug/io-stats/src/io-stats.c b/xlators/debug/io-stats/src/io-stats.c
index 912c78e69c4..556c7224960 100644
--- a/xlators/debug/io-stats/src/io-stats.c
+++ b/xlators/debug/io-stats/src/io-stats.c
@@ -1087,9 +1087,10 @@ io_stats_dump_stats_to_dict (xlator_t *this, dict_t *resp,
gf_time_fmt (timestr, sizeof timestr,
conf->cumulative.max_openfd_time.tv_sec,
gf_timefmt_FT);
- snprintf (timestr + strlen (timestr), sizeof timestr - strlen (timestr),
- ".%"GF_PRI_SUSECONDS,
- conf->cumulative.max_openfd_time.tv_usec);
+ if (conf->cumulative.max_openfd_time.tv_sec)
+ snprintf (timestr + strlen (timestr), sizeof timestr - strlen (timestr),
+ ".%"GF_PRI_SUSECONDS,
+ conf->cumulative.max_openfd_time.tv_usec);
dict_timestr = gf_strdup (timestr);
if (!dict_timestr)