2010-05-26 22:34:25 +08:00
|
|
|
##############################################################################
|
|
|
|
# It's an auxiliary file used to show binary log events or relay log events.
|
|
|
|
# It is only called by show_binlog_events.inc and show_relaylog_events.inc.
|
|
|
|
##############################################################################
|
|
|
|
|
2012-06-22 11:46:28 +02:00
|
|
|
# Do not modify $binlog_start - if we did, it could wrongly persist until a
|
|
|
|
# later call of show_events.inc.
|
|
|
|
if ($binlog_start)
|
|
|
|
{
|
|
|
|
--let $_binlog_start= $binlog_start
|
|
|
|
}
|
2010-05-26 22:34:25 +08:00
|
|
|
|
|
|
|
--let $_statement=show binlog events
|
|
|
|
if ($is_relay_log)
|
|
|
|
{
|
|
|
|
--let $_statement=show relaylog events
|
|
|
|
}
|
|
|
|
|
2010-10-21 09:37:10 +02:00
|
|
|
if ($binlog_file)
|
2010-05-26 22:34:25 +08:00
|
|
|
{
|
2013-05-03 11:27:29 +02:00
|
|
|
--let $_binlog_file= $binlog_file
|
|
|
|
if ($_binlog_file == 'LAST')
|
|
|
|
{
|
|
|
|
if ($is_relay_log)
|
|
|
|
{
|
|
|
|
--let $_binlog_file= query_get_value(SHOW SLAVE STATUS, Relay_Log_File, 1)
|
|
|
|
}
|
|
|
|
if (!$is_relay_log)
|
|
|
|
{
|
|
|
|
--let $_binlog_file= query_get_value(SHOW MASTER STATUS, File, 1)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
--let $_statement= $_statement in '$_binlog_file'
|
2010-05-26 22:34:25 +08:00
|
|
|
}
|
|
|
|
|
2013-03-26 10:35:34 +01:00
|
|
|
if (!$binlog_start)
|
|
|
|
{
|
|
|
|
# If $binlog_start is not set, we will set it as the fourth event's
|
|
|
|
# position (second in relay log which has not Binlog Checkpoing nor
|
|
|
|
# Gtid_list events).
|
|
|
|
# The first three events (Description Event, Gtid list, and Binlog Checkpoint
|
|
|
|
# event) are always ignored. For description event's length might be changed
|
|
|
|
# because of adding new events, 'SHOW BINLOG EVENTS LIMIT 3' is used to get
|
|
|
|
# the right value.
|
|
|
|
if ($is_relay_log)
|
|
|
|
{
|
|
|
|
--let $_binlog_start= query_get_value($_statement LIMIT 1, End_log_pos, 1)
|
|
|
|
}
|
|
|
|
if (!$is_relay_log)
|
|
|
|
{
|
|
|
|
--let $_binlog_start= query_get_value($_statement LIMIT 3, End_log_pos, 3)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2012-06-22 11:46:28 +02:00
|
|
|
--let $_statement= $_statement from $_binlog_start
|
2010-05-26 22:34:25 +08:00
|
|
|
|
2010-10-25 14:07:28 +02:00
|
|
|
# Cannot use if($binlog_limit) since the variable may begin with a 0
|
|
|
|
|
|
|
|
if (`SELECT '$binlog_limit' <> ''`)
|
2010-05-26 22:34:25 +08:00
|
|
|
{
|
|
|
|
--let $_statement= $_statement limit $binlog_limit
|
|
|
|
}
|
|
|
|
|
2012-06-22 11:46:28 +02:00
|
|
|
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR $_binlog_start <binlog_start>
|
2010-05-26 22:34:25 +08:00
|
|
|
--replace_column 2 # 4 # 5 #
|
2013-03-26 10:35:34 +01:00
|
|
|
--replace_regex /\/\* xid=.* \*\//\/* XID *\// /table_id: [0-9]+/table_id: #/ /file_id=[0-9]+/file_id=#/ /block_len=[0-9]+/block_len=#/ /Server ver:.*$/SERVER_VERSION, BINLOG_VERSION/ /GTID [0-9]+-[0-9]+-[0-9]+/GTID #-#-#/ /\[([0-9]-[0-9]-[0-9]+)\]/[#-#-#]/
|
2010-05-26 22:34:25 +08:00
|
|
|
--eval $_statement
|