diff options
author | Poornima G <pgurusid@redhat.com> | 2015-03-06 15:16:35 +0530 |
---|---|---|
committer | Raghavendra G <rgowdapp@redhat.com> | 2015-03-10 04:42:22 -0700 |
commit | b832e35493aca8c49359b1db4bd7ae3afbcdd2cb (patch) | |
tree | 663549a9da1f05e1681268c89ed5dcd40c919eb6 /xlators/performance | |
parent | 1ae8b4c33af175545d6afe99aeb7a21896960a35 (diff) |
Performance: Replace ASSERTS in xlator fini() with info messages, for the known leaks.
There are few known leaks in read-ahead and quick-read xlator fini().
Until they are fixed replacing the ASSERTS with info, else any call
to glfs_fini() in debug mode will core dump.
Change-Id: Id60c6f952574863fc77c7d101cb5d5e9113090d8
BUG: 1199436
Signed-off-by: Poornima G <pgurusid@redhat.com>
Reviewed-on: http://review.gluster.org/9819
Reviewed-by: Raghavendra Talur <rtalur@redhat.com>
Reviewed-by: Ravishankar N <ravishankar@redhat.com>
Reviewed-by: Raghavendra G <rgowdapp@redhat.com>
Tested-by: Raghavendra G <rgowdapp@redhat.com>
Diffstat (limited to 'xlators/performance')
-rw-r--r-- | xlators/performance/quick-read/src/quick-read.c | 8 | ||||
-rw-r--r-- | xlators/performance/read-ahead/src/read-ahead.c | 8 |
2 files changed, 15 insertions, 1 deletions
diff --git a/xlators/performance/quick-read/src/quick-read.c b/xlators/performance/quick-read/src/quick-read.c index 0e4ce71a571..aa44c5d388b 100644 --- a/xlators/performance/quick-read/src/quick-read.c +++ b/xlators/performance/quick-read/src/quick-read.c @@ -1049,7 +1049,13 @@ qr_inode_table_destroy (qr_private_t *priv) conf = &priv->conf; for (i = 0; i < conf->max_pri; i++) { - GF_ASSERT (list_empty (&priv->table.lru[i])); + /* There is a known leak of inodes, hence until + * that is fixed, log the assert as warning. + GF_ASSERT (list_empty (&priv->table.lru[i]));*/ + if (!list_empty (&priv->table.lru[i])) { + gf_log ("quick-read", GF_LOG_INFO, + "quick read inode table lru not empty"); + } } LOCK_DESTROY (&priv->table.lock); diff --git a/xlators/performance/read-ahead/src/read-ahead.c b/xlators/performance/read-ahead/src/read-ahead.c index 01c861d52f2..7ea9f40a1c8 100644 --- a/xlators/performance/read-ahead/src/read-ahead.c +++ b/xlators/performance/read-ahead/src/read-ahead.c @@ -1204,8 +1204,16 @@ fini (xlator_t *this) this->private = NULL; + /* The files structures allocated in open and create are not deleted. + * until that is freed, marking the below assert as warning. GF_ASSERT ((conf->files.next == &conf->files) && (conf->files.prev == &conf->files)); + */ + if (!((conf->files.next == &conf->files) + && (conf->files.prev == &conf->files))) { + gf_log (this->name, GF_LOG_INFO, + "undestroyed read ahead file structures found"); + } pthread_mutex_destroy (&conf->conf_lock); GF_FREE (conf); |