Get the App
SLTechnology News&Howtos  ›  Database  › 

Four: operation and maintenance in GTID (notes)

Shulou Source: shulou.com Published: 2022-06-01 07:46:06 10月05日 Update

Welcome to my "in-depth understanding of MySQL Master and Slave principle 32", as follows:

If the picture cannot be displayed, please see the following link:

Https://www.jianshu.com/p/d636215d767f

1. ONGOING_ANONYMOUS_TRANSACTION_COUNT

The main library generates GTID: anonymous + 1 can be called below

(gdb) bt#0 Gtid_state::generate_automatic_gtid (this=0x308ab20, thd=0x7ffe7c000b70, specified_sidno=0, specified_gno=0, locked_sidno=0x7fffec0f38c0) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/rpl_gtid_state.cc:507#1 0x0000000001877a61 in MYSQL_BIN_LOG::assign_automatic_gtids_to_flush_group (this=0x2e87840 First_seen=0x7ffe7c000b70) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/binlog.cc:1401#2 0x000000000188a19c in MYSQL_BIN_LOG::process_flush_stage_queue (this=0x2e87840, total_bytes_var=0x7fffec0f3a08, rotate_var=0x7fffec0f3a07, out_queue_var=0x7fffec0f39f8) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/binlog.cc:9143#3 0x000000000188b743 in MYSQL_BIN_LOG::ordered_commit (this=0x2e87840, thd=0x7ffe7c000b70, all=false) Skip_commit=false) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/binlog.cc:9782#4 0x0000000001889e22 in MYSQL_BIN_LOG::commit (this=0x2e87840, thd=0x7ffe7c000b70, all=false) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/binlog.cc:9033#5 0x0000000000f802eb in ha_commit_trans (thd=0x7ffe7c000b70, all=false) Ignore_global_read_lock=false) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/handler.cc:1830#6 0x00000000016dd5b9 in trans_commit_stmt (thd=0x7ffe7c000b70) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/transaction.cc:458#7 0x00000000015d19d1 in mysql_execute_command (thd=0x7ffe7c000b70, first_level=true) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/sql_parse.cc:5293#8 0x00000000015d30c6 in mysql_parse (thd=0x7ffe7c000b70 Parser_state=0x7fffec0f6600) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/sql_parse.cc:5901#9 0x00000000015c6c5a in dispatch_command (thd=0x7ffe7c000b70, com_data=0x7fffec0f6d70 Command=COM_QUERY) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/sql_parse.cc:1490#10 0x00000000015c59e7 in do_command (thd=0x7ffe7c000b70) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/sql_parse.cc:1021#11 0x000000000170e660 in handle_connection (arg=0x34a9940) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/conn_handler/connection_handler_per_thread.cc: 312 0x0000000001945620 in pfs_spawn_thread (arg=0x66eee50) at / root/mysqlall/percona-server-locks-detail-5.7.22/storage/perfschema/pfs.cc:2190#13 0x00007ffff7bc6aa1 in start_thread () from / lib64/libpthread.so.0#14 0x00007ffff6719bcd in clone () from / lib64/libc.so.6

The main library is anonymous on the COMMIT node-1

# 0 Gtid_state::update_commit_group (this=0x308ab20, first_thd=0x7ffe7c000b70) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/rpl_gtid_state.cc:148#1 0x000000000188a59f in MYSQL_BIN_LOG::process_commit_stage_queue (this=0x2e87840, thd=0x7ffe7c000b70, first=0x7ffe7c000b70) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/binlog.cc:9238#2 0x000000000188bd46 in MYSQL_BIN_LOG::ordered_commit (this=0x2e87840, thd=0x7ffe7c000b70, all=false Skip_commit=false) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/binlog.cc:9921#3 0x0000000001889e22 in MYSQL_BIN_LOG::commit (this=0x2e87840, thd=0x7ffe7c000b70, all=false) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/binlog.cc:9033#4 0x0000000000f802eb in ha_commit_trans (thd=0x7ffe7c000b70, all=false) Ignore_global_read_lock=false) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/handler.cc:1830#5 0x00000000016dd5b9 in trans_commit_stmt (thd=0x7ffe7c000b70) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/transaction.cc:458#6 0x00000000015d19d1 in mysql_execute_command (thd=0x7ffe7c000b70, first_level=true) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/sql_parse.cc:5293#7 0x00000000015d30c6 in mysql_parse (thd=0x7ffe7c000b70 Parser_state=0x7fffec0f6600) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/sql_parse.cc:5901#8 0x00000000015c6c5a in dispatch_command (thd=0x7ffe7c000b70, com_data=0x7fffec0f6d70 Command=COM_QUERY) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/sql_parse.cc:1490#9 0x00000000015c59e7 in do_command (thd=0x7ffe7c000b70) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/sql_parse.cc:1021#10 0x000000000170e660 in handle_connection (arg=0x34a9940) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/conn_handler/connection_handler_per_thread.cc: 31211 0x0000000001945620 in pfs_spawn_thread (arg=0x66eee50) at / root/mysqlall/percona-server-locks-detail-5.7.22/storage/perfschema/pfs.cc:2190#12 0x00007ffff7bc6aa1 in start_thread () from / lib64/libpthread.so.0#13 0x00007ffff6719bcd in clone () from / lib64/libc.so.6

Called when GTID_APPLY from the library

Gtid_log_event::do_apply_event-> set_gtid_next Anonymous + 1

The slave library is called Gtid_state::update_gtids_impl Anonymous-1

Xid_log_event::do_commit-> MYSQL_BIN_LOG::gtid_end_transaction-> update_on_commit- > update_gtids_impl

2. MASTER_AUTO_POSITION = 1 stack frame

Cleaned up all the replay log

# 0 Relay_log_info::purge_relay_logs (this=0x67618a0, thd=0x7ffe7c000b70, just_reset=false, errmsg=0x7fffec0f4b80, delete_only=false) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/rpl_rli.cc:1239#1 0x00000000018cd130 in change_master (thd=0x7ffe7c000b70, mi=0x6670230, lex_mi=0x7ffe7c0037e0) Preserve_logs=false) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/rpl_slave.cc:11337#2 0x00000000018cdcac in change_master_cmd (thd=0x7ffe7c000b70) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/rpl_slave.cc:11688#3 0x00000000015cabc5 in mysql_execute_command (thd=0x7ffe7c000b70, first_level=true) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/sql_parse.cc:3125#4 0x00000000015d30c6 in mysql_parse (thd=0x7ffe7c000b70 Parser_state=0x7fffec0f6600) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/sql_parse.cc:5901#5 0x00000000015c6c5a in dispatch_command (thd=0x7ffe7c000b70, com_data=0x7fffec0f6d70 Command=COM_QUERY) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/sql_parse.cc:1490#6 0x00000000015c59e7 in do_command (thd=0x7ffe7c000b70) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/sql_parse.cc:1021#7 0x000000000170e660 in handle_connection (arg=0x5f72350) at / root/mysqlall/percona-server-locks-detail-5.7.22/sql/conn_handler/connection_handler_per_thread.cc: 312-8 0x0000000001945620 in pfs_spawn_thread (arg=0x67cfa60) at / root/mysqlall/percona-server-locks-detail-5.7.22/storage/perfschema/pfs.cc:2190#9 0x00007ffff7bc6aa1 in start_thread () from / lib64/libpthread.so.0#10 0x00007ffff6719bcd in clone () from / lib64/libc.so.6

Tags: Master-slave principle picture time node link generation note Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno Xiaomi Apple MySQL Shulou Technology vpn