From 70113ee170cbace52d01afdb3ddd4ea5bfa92ebd Mon Sep 17 00:00:00 2001 From: Nirbhay Choubey Date: Tue, 22 Dec 2015 14:58:02 -0500 Subject: [PATCH] MDEV-9290 : InnoDB: Assertion failure in file trx0sys.cc line 353 Addendum: Save thd's server_status & option_bits before setting the thread specific pointer. --- sql/mysqld.cc | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/sql/mysqld.cc b/sql/mysqld.cc index fe74a82a4c6..3e2cc40e181 100644 --- a/sql/mysqld.cc +++ b/sql/mysqld.cc @@ -4611,19 +4611,19 @@ a file name for --log-bin-index option", opt_binlog_index_name); if (tmp->wsrep_applier == true) { /* - Set THR_THD to temporally point to this THD to register all the + Save/restore server_status and variables.option_bits and they get + altered during init_for_queries(). + */ + unsigned int server_status_saved= tmp->server_status; + ulonglong option_bits_saved= tmp->variables.option_bits; + + /* + Set THR_THD to temporarily point to this THD to register all the variables that allocates memory for this THD. */ THD *current_thd_saved= current_thd; my_pthread_setspecific_ptr(THR_THD, tmp); - /* - Also save/restore server_status and variables.option_bits and they - get altered during init_for_queries(). - */ - unsigned int server_status_saved= tmp->server_status; - ulonglong option_bits_saved= tmp->variables.option_bits; - tmp->init_for_queries(); /* Restore current_thd. */