Hi Kristian, Daniel, On Thu, Jan 26, 2017 at 2:24 PM, Kristian Nielsen <kniel...@knielsen-hq.org> wrote: > Sachin Setiya <sachin.set...@mariadb.com> writes: > >> On Tue, Jan 24, 2017 at 2:32 AM, Daniel Black <daniel.bl...@au1.ibm.com> >> wrote: > >>> On 24/01/17 04:30, SachinSetiya wrote: >>> > revision-id: ef590faa0e21d25a2dc5153f938135612b17ecbc >>> (mariadb-10.1.20-31-gef590fa) >>> >>> >>> > thd_proc_info(thd, message); >>> > + DBUG_EXECUTE_IF("should_sleep_for_mdev7409",{ >>> > + my_sleep(500000); >>> > + };); >>> >>> Shouldn't these be DEBUG_SYNC_C("do_exec_row"); >>> >>> and then use debug_sync to generate test synchronisation. >>> >>> I tried using DEBUG_SYNC and DEBUG_SYNC_C > >> But mtr test is not waiting, this is because ::do_exec_row is called by SQL >> thread is there a way to >> stop SQL thread and add sync points ? > > You use DBUG_EXECUTE_IF() to trigger code inside the SQL thread that then > does the appropriate debug_sync command. For an example, see the use of > rpl_parallel_scheduled_gtid_0_x_100 in > mysql-test/extra/rpl_tests/rpl_parallel.inc and sql/rpl_parallel.cc. > thanks, used debug_sync_set_action, But one more problem I used debug_sync_set_action, but this changes thd->info to debug_sync point now. So Instead of printing thd->info I am just printing from echo and using condition in dbug_execute_if
+ DBUG_EXECUTE_IF("should_sleep_for_mdev7409",{ + if(!my_strcasecmp(system_charset_info, "test", thd->db) && + !my_strcasecmp(system_charset_info,"t1", table_name)) + debug_sync_set_action(thd, + STRING_WITH_LEN("now SIGNAL thd_info_set WAIT_FOR done")); + };); +connection slave; +SET DEBUG_SYNC='now WAIT_FOR thd_info_set'; +--echo #Write_row:- Writing row on table t1 +SET DEBUG_SYNC = 'now SIGNAL done'; > Do not ever use sleeps as a way to synchronise in test cases (or anywhere). > >> + my_snprintf(msg, sizeof(msg),"Write_rows_log_event::write_row() on table >> %s", >> + m_table->s->table_name.str); > > Since you are anyway changing the message, I would put something more > appropriate here. Putting internal server source code names like > Write_rows_log_event::write_row() in SHOW PROCESSLIST does not seem > appropriate. > Done. > - Kristian. Patch link:- http://lists.askmonty.org/pipermail/commits/2017-January/010583.html Buildbot link:- https://buildbot.askmonty.org/buildbot/grid?category=main&branch=bb-10.1-sachin Regards sachin _______________________________________________ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp