Hi, Nirbhay! On Sep 12, Nirbhay Choubey wrote:
diff --git a/sql/mysqld.cc b/sql/mysqld.cc index 2008fc5..4c05999 100644 --- a/sql/mysqld.cc +++ b/sql/mysqld.cc @@ -4584,6 +4579,29 @@ static int init_server_components()
+ /* Now is the time to initialize threads for queries. */ + THD *tmp; + I_List_iterator<THD> it(threads); + while ((tmp= it++)) + if (tmp->wsrep_applier == true) + tmp->init_for_queries();
Do you really need to iterate over all THD's? There is only one applier thread, right? And it's THD is not stored anywhere, only in the global list?
2 actually : applier and replayer.
I meant that there might be, perhaps, a global variable, like THD *wsrep_applier_thd, and then you won't need to iterate. But now I realize that there can be no connection threads at this point, only wsrep threads. So practically you need to initialize *all* THD's in the list. Ok, then, I retract my comment, let's keep this code as you have it. ok to push, thanks
+ mysql_mutex_unlock(&LOCK_thread_count); + } +#endif +
Regards, Sergei