I managed to crash debug server with following backtrace:
Thread 1 (Thread 0x7fc8c061c700 (LWP 5229)):
#0 __pthread_kill (threadid=<optimized out>, signo=6) at ../sysdeps/unix/sysv/linux/pthread_kill.c:62
#1 0x0000000000b14459 in my_write_core (sig=6) at /home/sveta/src/percona-server/mysys/stacktrace.c:424
#2 0x000000000074e61d in handle_fatal_signal (sig=6) at /home/sveta/src/percona-server/sql/signal_handler.cc:236
#3 <signal handler called>
#4 0x00007fc8ccbc8428 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54
#5 0x00007fc8ccbca02a in __GI_abort () at abort.c:89
#6 0x00007fc8ccbc0bd7 in __assert_fail_base (fmt=<optimized out>,
assertion=assertion@entry=0xfa7668 "! is_set() || m_can_overwrite_status",
file=file@entry=0xfa7458 "/home/sveta/src/percona-server/sql/sql_error.cc", line=line@entry=521,
function=function@entry=0xfa7a00 <Diagnostics_area::set_error_status(unsigned int, char const*, char const*, Sql_condition const*)::__PRETTY_FUNCTION__> "void Diagnostics_area::set_error_status(uint, const char*, const char*, const Sql_condition*)") at assert.c:92
#7 0x00007fc8ccbc0c82 in __GI___assert_fail (assertion=0xfa7668 "! is_set() || m_can_overwrite_status",
file=0xfa7458 "/home/sveta/src/percona-server/sql/sql_error.cc", line=521,
function=0xfa7a00 <Diagnostics_area::set_error_status(unsigned int, char const*, char const*, Sql_condition const*)::__PRETTY_FUNCTION__> "void Diagnostics_area::set_error_status(uint, const char*, const char*, const Sql_condition*)") at assert.c:101
#8 0x00000000007d7121 in Diagnostics_area::set_error_status (this=0x7fc884004000, sql_errno=1837,
message=0x7fc8c061b1f0 "When @@SESSION.GTID_NEXT is set to a GTID, you must explicitly set it to a different value after a COMMIT or ROLLBACK. Please check GTID_NEXT variable manual page for detailed explanation. Current @@S"..., sqlstate=0xfc14e1 "HY000", error_condition=0x0) at /home/sveta/src/percona-server/sql/sql_error.cc:521
#9 0x00000000007bc21f in THD::raise_condition (this=0x7fc884000a50, sql_errno=1837, sqlstate=0xfc14e1 "HY000",
level=Sql_condition::WARN_LEVEL_ERROR,
msg=0x7fc8c061b1f0 "When @@SESSION.GTID_NEXT is set to a GTID, you must explicitly set it to a different value after a COMMIT or ROLLBACK. Please check GTID_NEXT variable manual page for detailed explanation. Current @@S"...)
at /home/sveta/src/percona-server/sql/sql_class.cc:1421
#10 0x00000000006363ae in my_message_sql (error=1837,
---Type <return> to continue, or q <return> to quit---
str=0x7fc8c061b1f0 "When @@SESSION.GTID_NEXT is set to a GTID, you must explicitly set it to a different value after a COMMIT or ROLLBACK. Please check GTID_NEXT variable manual page for detailed explanation. Current @@S"..., MyFlags=0) at /home/sveta/src/percona-server/sql/mysqld.cc:3613
#11 0x0000000000b0a023 in my_error (nr=1837, MyFlags=0) at /home/sveta/src/percona-server/mysys/my_error.c:185
#12 0x0000000000a599e4 in gtid_pre_statement_checks (thd=0x7fc884000a50)
at /home/sveta/src/percona-server/sql/rpl_gtid_execution.cc:360
#13 0x0000000000a75beb in Rows_log_event::do_apply_event (this=0x7fc88400e2c0, rli=0x35e95c0)
at /home/sveta/src/percona-server/sql/log_event.cc:11198
#14 0x0000000000a60452 in Log_event::apply_event (this=0x7fc88400e2c0, rli=0x35e95c0)
at /home/sveta/src/percona-server/sql/log_event.cc:3130
#15 0x0000000000ac4270 in apply_event_and_update_pos (ptr_ev=0x7fc8c061b910, thd=0x7fc884000a50, rli=0x35e95c0)
at /home/sveta/src/percona-server/sql/rpl_slave.cc:3986
#16 0x0000000000ac5902 in exec_relay_log_event (thd=0x7fc884000a50, rli=0x35e95c0)
at /home/sveta/src/percona-server/sql/rpl_slave.cc:4481
#17 0x0000000000acbab1 in handle_slave_sql (arg=0x3597280) at /home/sveta/src/percona-server/sql/rpl_slave.cc:6413
#18 0x0000000000ea1594 in pfs_spawn_thread (arg=0x7fc8a40f4c60)
at /home/sveta/src/percona-server/storage/perfschema/pfs.cc:1860
#19 0x00007fc8cd8056ba in start_thread (arg=0x7fc8c061c700) at pthread_create.c:333
#20 0x00007fc8ccc9982d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109
Notes on how to repeat.
Replace
----<q>----
5、turn off gtid_deployment_step in master (3306)
SET GLOBAL gtid_deployment_step = OFF;
----</q>----
with
----<q>----
5、turn off and on gtid_deployment_step in master (3306) few times:
SET GLOBAL gtid_deployment_step = OFF;
SELECT SLEEP(30);
SET GLOBAL gtid_deployment_step = ON;
----</q>----
I managed to crash debug server with following backtrace:
Thread 1 (Thread 0x7fc8c061c700 (LWP 5229)): <optimized out>, signo=6) at ../sysdeps/ unix/sysv/ linux/pthread_ kill.c: 62 src/percona- server/ mysys/stacktrac e.c:424 src/percona- server/ sql/signal_ handler. cc:236 unix/sysv/ linux/raise. c:54 assertion@ entry=0xfa7668 "! is_set() || m_can_overwrite _status" , file@entry= 0xfa7458 "/home/ sveta/src/ percona- server/ sql/sql_ error.cc" , line=line@ entry=521, function@ entry=0xfa7a00 <Diagnostics_ area::set_ error_status( unsigned int, char const*, char const*, Sql_condition const*) ::__PRETTY_ FUNCTION_ _> "void Diagnostics_ area::set_ error_status( uint, const char*, const char*, const Sql_condition*)") at assert.c:92 _status" , sveta/src/ percona- server/ sql/sql_ error.cc" , line=521, 0xfa7a00 <Diagnostics_ area::set_ error_status( unsigned int, char const*, char const*, Sql_condition const*) ::__PRETTY_ FUNCTION_ _> "void Diagnostics_ area::set_ error_status( uint, const char*, const char*, const Sql_condition*)") at assert.c:101 area::set_ error_status (this=0x7fc8840 04000, sql_errno=1837, 0x7fc8c061b1f0 "When @@SESSION.GTID_NEXT is set to a GTID, you must explicitly set it to a different value after a COMMIT or ROLLBACK. Please check GTID_NEXT variable manual page for detailed explanation. Current @@S"..., sqlstate=0xfc14e1 "HY000", error_condition =0x0) at /home/sveta/ src/percona- server/ sql/sql_ error.cc: 521 condition (this=0x7fc8840 00a50, sql_errno=1837, sqlstate=0xfc14e1 "HY000", Sql_condition: :WARN_LEVEL_ ERROR, 0x7fc8c061b1f0 "When @@SESSION.GTID_NEXT is set to a GTID, you must explicitly set it to a different value after a COMMIT or ROLLBACK. Please check GTID_NEXT variable manual page for detailed explanation. Current @@S"...) src/percona- server/ sql/sql_ class.cc: 1421 0x7fc8c061b1f0 "When @@SESSION.GTID_NEXT is set to a GTID, you must explicitly set it to a different value after a COMMIT or ROLLBACK. Please check GTID_NEXT variable manual page for detailed explanation. Current @@S"..., MyFlags=0) at /home/sveta/ src/percona- server/ sql/mysqld. cc:3613 src/percona- server/ mysys/my_ error.c: 185 statement_ checks (thd=0x7fc88400 0a50) src/percona- server/ sql/rpl_ gtid_execution. cc:360 event:: do_apply_ event (this=0x7fc8840 0e2c0, rli=0x35e95c0) src/percona- server/ sql/log_ event.cc: 11198 :apply_ event (this=0x7fc8840 0e2c0, rli=0x35e95c0) src/percona- server/ sql/log_ event.cc: 3130 and_update_ pos (ptr_ev= 0x7fc8c061b910, thd=0x7fc884000a50, rli=0x35e95c0) src/percona- server/ sql/rpl_ slave.cc: 3986 log_event (thd=0x7fc88400 0a50, rli=0x35e95c0) src/percona- server/ sql/rpl_ slave.cc: 4481 src/percona- server/ sql/rpl_ slave.cc: 6413 4c60) src/percona- server/ storage/ perfschema/ pfs.cc: 1860 c700) at pthread_ create. c:333 unix/sysv/ linux/x86_ 64/clone. S:109
#0 __pthread_kill (threadid=
#1 0x0000000000b14459 in my_write_core (sig=6) at /home/sveta/
#2 0x000000000074e61d in handle_fatal_signal (sig=6) at /home/sveta/
#3 <signal handler called>
#4 0x00007fc8ccbc8428 in __GI_raise (sig=sig@entry=6) at ../sysdeps/
#5 0x00007fc8ccbca02a in __GI_abort () at abort.c:89
#6 0x00007fc8ccbc0bd7 in __assert_fail_base (fmt=<optimized out>,
assertion=
file=
function=
#7 0x00007fc8ccbc0c82 in __GI___assert_fail (assertion=0xfa7668 "! is_set() || m_can_overwrite
file=0xfa7458 "/home/
function=
#8 0x00000000007d7121 in Diagnostics_
message=
#9 0x00000000007bc21f in THD::raise_
level=
msg=
at /home/sveta/
#10 0x00000000006363ae in my_message_sql (error=1837,
---Type <return> to continue, or q <return> to quit---
str=
#11 0x0000000000b0a023 in my_error (nr=1837, MyFlags=0) at /home/sveta/
#12 0x0000000000a599e4 in gtid_pre_
at /home/sveta/
#13 0x0000000000a75beb in Rows_log_
at /home/sveta/
#14 0x0000000000a60452 in Log_event:
at /home/sveta/
#15 0x0000000000ac4270 in apply_event_
at /home/sveta/
#16 0x0000000000ac5902 in exec_relay_
at /home/sveta/
#17 0x0000000000acbab1 in handle_slave_sql (arg=0x3597280) at /home/sveta/
#18 0x0000000000ea1594 in pfs_spawn_thread (arg=0x7fc8a40f
at /home/sveta/
#19 0x00007fc8cd8056ba in start_thread (arg=0x7fc8c061
#20 0x00007fc8ccc9982d in clone () at ../sysdeps/
Notes on how to repeat.
Replace
----<q>---- _step in master (3306) _step = OFF;
5、turn off gtid_deployment
SET GLOBAL gtid_deployment
----</q>----
with
----<q>---- _step in master (3306) few times:
5、turn off and on gtid_deployment
SET GLOBAL gtid_deployment _step = OFF; _step = ON;
SELECT SLEEP(30);
SET GLOBAL gtid_deployment
----</q>----