mirror of
				https://github.com/MariaDB/server.git
				synced 2025-11-03 14:33:32 +03:00 
			
		
		
		
	Some of the test cases reference to binlog position and these position numbers are written into result explicitly. It is difficult to maintain if log event format changes. There are a couple of cases explicit position number appears, we handle them in different ways A. 'CHANGE MASTER ...' with MASTER_LOG_POS or/and RELAY_LOG_POS options Use --replace_result to mask them. B. 'SHOW BINLOG EVENT ...' Replaced by show_binlog_events.inc or wait_for_binlog_event.inc. show_binlog_events.inc file's function is enhanced by given $binlog_file and $binlog_limit. C. 'SHOW SLAVE STATUS', 'show_slave_status.inc' and 'show_slave_status2.inc' For the test cases just care a few items in the result of 'SHOW SLAVE STATUS', only the items related to each test case are showed. 'show_slave_status.inc' is rebuild, only the given items in $status_items will be showed. 'check_slave_is_running.inc' and 'check_slave_no_error.inc' and 'check_slave_param.inc' are auxiliary files helping to show running status and error information easily.
		
			
				
	
	
		
			34 lines
		
	
	
		
			827 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			827 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
# include/wait_for_binlog_event.inc
 | 
						|
#
 | 
						|
# SUMMARY
 | 
						|
#
 | 
						|
#    Waits until SHOW BINLOG EVENTS has returned in last event a specified substring.
 | 
						|
#
 | 
						|
# USAGE
 | 
						|
#
 | 
						|
#    let $wait_binlog_event= DROP;
 | 
						|
#    --source include/wait_for_binlog_event.inc
 | 
						|
 | 
						|
let $_loop_count= 300;
 | 
						|
let $_last_event= ;
 | 
						|
let $_event_pos= 1;
 | 
						|
 | 
						|
while (`SELECT INSTR("$_last_event","$wait_binlog_event") = 0`)
 | 
						|
{
 | 
						|
  dec $_loop_count;
 | 
						|
  if (!$_loop_count)
 | 
						|
  {
 | 
						|
    --source include/show_rpl_debug_info.inc
 | 
						|
    --die ERROR: failed while waiting for $wait_binlog_event in binlog 
 | 
						|
  }
 | 
						|
  real_sleep 0.1;
 | 
						|
  let $_event= query_get_value(SHOW BINLOG EVENTS, Info, $_event_pos);
 | 
						|
  let $_last_event= $_event;
 | 
						|
  while (`SELECT "$_event" != "No such row"`)
 | 
						|
  {
 | 
						|
    inc $_event_pos;
 | 
						|
    let $_last_event= $_event;
 | 
						|
    let $_event= query_get_value(SHOW BINLOG EVENTS, Info, $_event_pos);
 | 
						|
  }
 | 
						|
}
 |