MySQL 5.6.14 Source Code Document
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
show_delayed_slave_state.inc
1 # ==== Purpose ====
2 #
3 # Display the delay state of the SQL thread.
4 #
5 # ==== Usage ====
6 #
7 # --let $verbose_delayed_slave_state= [0|1]
8 # --source extra/rpl_tests/show_delayed_slave_state.inc
9 #
10 # By default, the output is normalized so that it does not depend on
11 # exact timing or exact binlog positions. If
12 # $verbose_delayed_slave_state is set, then it outputs exact times and
13 # binlog positions. This can be useful for debugging.
14 
15 --let $_delayed_slave_status= query_get_value(SHOW SLAVE STATUS, Slave_SQL_Running_State, 1)
16 
17 --let $_delayed_slave_remaining_delay= query_get_value(SHOW SLAVE STATUS, SQL_Remaining_Delay, 1)
18 --let $_delayed_slave_qualitative_delay= `SELECT CASE WHEN "$_delayed_slave_remaining_delay" = "NULL" THEN "NULL" WHEN "$_delayed_slave_remaining_delay" = "0" THEN "0" ELSE "greater than zero" END`
19 
20 --let $_delayed_slave_io_pos= query_get_value(SHOW SLAVE STATUS, Read_Master_Log_Pos, 1)
21 --let $_delayed_slave_sql_pos= query_get_value(SHOW SLAVE STATUS, Exec_Master_Log_Pos, 1)
22 --let $_delayed_slave_qualitative_log_pos= `SELECT IF($_delayed_slave_io_pos > $_delayed_slave_sql_pos, "behind", "in sync with")`
23 
24 --echo Slave_SQL_Running_State='$_delayed_slave_status'; SQL_Remaining_Delay is $_delayed_slave_qualitative_delay; SQL thread is $_delayed_slave_qualitative_log_pos IO thread
25 
26 if ($verbose_delayed_slave_state) {
27  --echo SQL_Remaining_Delay='$_delayed_slave_remaining_delay'; Read_master_log_pos='$_delayed_slave_io_pos'; Exec_Master_Log_Pos='$_delayed_slave_sql_pos'
28 }