diff options
author | Mohit Agrawal <moagrawa@redhat.com> | 2017-07-27 09:25:32 +0530 |
---|---|---|
committer | Jeff Darcy <jeff@pl.atyp.us> | 2017-07-28 03:12:10 +0000 |
commit | fc0fce2c8f0f4c9ca373fdc754cab6359c9fcdcb (patch) | |
tree | c4679bc2fb06ba8b38f41c229f77b33baf9363ad | |
parent | cec5036f7e99ae265bb5e0e7f3df30166466eb2c (diff) |
changetimerecorder: Brick process crashed at ctr xlator in notify function
Problem: Sometime brick process is getting crash in notify function at the
time of cleanup db connection while brick mux is enabled.
Solution: In changetimerrecorder (ctr) notify function after cleanup
db connection set to db_conn to NULL to avoid reuse the same
db connection again.
Note: Below is the backtrace pattern showing by brick process
#0 0x00007ff98a30c1f7 in raise () from /lib64/libc.so.6
#1 0x00007ff98a30d8e8 in abort () from /lib64/libc.so.6
#2 0x00007ff98a34bf47 in __libc_message () from /lib64/libc.so.6
#3 0x00007ff98a351b54 in malloc_printerr () from /lib64/libc.so.6
#4 0x00007ff98a3537aa in _int_free () from /lib64/libc.so.6
#5 0x00007ff97d95e311 in gf_sql_connection_fini (sql_connection=sql_connection@entry=0x7ff8e8496b50) at gfdb_sqlite3.c:42
#6 0x00007ff97d95e38a in gf_sqlite3_fini (db_conn=0x7ff92ca04470) at gfdb_sqlite3.c:507
#7 0x00007ff97d957156 in fini_db (_conn_node=0x7ff92ca04470) at gfdb_data_store.c:326
#8 0x00007ff97db78679 in notify (this=0x7ff92c5b3670, event=9, data=0x7ff92c5b5a00) at changetimerecorder.c:2178
#9 0x00007ff98bca0dc2 in xlator_notify (xl=0x7ff92c5b3670, event=event@entry=9, data=data@entry=0x7ff92c5b5a00) at xlator.c:549
#10 0x00007ff98bd3ac12 in default_notify (this=this@entry=0x7ff92c5b5a00, event=9, data=data@entry=0x7ff92c5b6d50) at defaults.c:3139
BUG: 1475632
Change-Id: Idd4bfdb4629c4799ac477ade81228065212683fb
Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
Reviewed-on: https://review.gluster.org/17888
Reviewed-by: Jeff Darcy <jeff@pl.atyp.us>
Smoke: Gluster Build System <jenkins@build.gluster.org>
CentOS-regression: Gluster Build System <jenkins@build.gluster.org>
Reviewed-by: Atin Mukherjee <amukherj@redhat.com>
-rw-r--r-- | xlators/features/changetimerecorder/src/changetimerecorder.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/xlators/features/changetimerecorder/src/changetimerecorder.c b/xlators/features/changetimerecorder/src/changetimerecorder.c index 1b13607589b..99519d10a0d 100644 --- a/xlators/features/changetimerecorder/src/changetimerecorder.c +++ b/xlators/features/changetimerecorder/src/changetimerecorder.c @@ -2316,6 +2316,8 @@ notify (xlator_t *this, int event, void *data, ...) CTR_MSG_CLOSE_DB_CONN_FAILED, "Failed closing " "db connection"); } + if (priv->_db_conn) + priv->_db_conn = NULL; } ret = default_notify (this, event, data); |