mirror of
				https://github.com/MariaDB/server.git
				synced 2025-11-03 14:33:32 +03:00 
			
		
		
		
	times (ie: 2:16:20). mysql-test/r/log_tables_debug.result: Update test case result. mysql-test/t/log_tables_debug.test: Skip spaces and handle case when a leading zero is not printed.
		
			
				
	
	
		
			95 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			95 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
### t/log_tables_debug.test
 | 
						|
#
 | 
						|
# Log-related tests requiring a debug-build server.
 | 
						|
#
 | 
						|
 | 
						|
# extra clean-up required due to Bug#38124, set to 1 when behavior has
 | 
						|
# changed (see explanation in log_state.test)
 | 
						|
let $fixed_bug38124 = 0;
 | 
						|
 | 
						|
--source include/have_debug.inc
 | 
						|
 | 
						|
# Several subtests modify global variables. Save the initial values only here,
 | 
						|
# but reset to the initial values per subtest.
 | 
						|
SET @old_general_log= @@global.general_log;
 | 
						|
SET @old_general_log_file= @@global.general_log_file;
 | 
						|
SET @old_slow_query_log= @@global.slow_query_log;
 | 
						|
SET @old_slow_query_log_file= @@global.slow_query_log_file;
 | 
						|
 | 
						|
 | 
						|
--echo #
 | 
						|
--echo # Bug#45387 Information about statement id for prepared
 | 
						|
--echo #           statements missed from general log
 | 
						|
--echo #
 | 
						|
 | 
						|
let MYSQLD_DATADIR= `SELECT @@datadir`;
 | 
						|
 | 
						|
# set logging to our specific bug log to control the entries added
 | 
						|
SET @@global.general_log = ON;
 | 
						|
SET @@global.general_log_file = 'bug45387_general.log';
 | 
						|
 | 
						|
# turn on output of timestamps on all log file entries
 | 
						|
SET SESSION debug='+d,reset_log_last_time';
 | 
						|
 | 
						|
let CONN_ID= `SELECT CONNECTION_ID()`;
 | 
						|
FLUSH LOGS;
 | 
						|
 | 
						|
# reset log settings
 | 
						|
SET @@global.general_log = @old_general_log;
 | 
						|
SET @@global.general_log_file = @old_general_log_file;
 | 
						|
SET SESSION debug='-d';
 | 
						|
 | 
						|
perl;
 | 
						|
  # get the relevant info from the surrounding perl invocation
 | 
						|
  $datadir= $ENV{'MYSQLD_DATADIR'};
 | 
						|
  $conn_id= $ENV{'CONN_ID'};
 | 
						|
 | 
						|
  # loop through the log file looking for the stmt querying for conn id
 | 
						|
  open(FILE, "$datadir/bug45387_general.log") or
 | 
						|
    die("Unable to read log file $datadir/bug45387_general.log: $!\n");
 | 
						|
  while(<FILE>) {
 | 
						|
    if (/\d{6}\s+\d+:\d+:\d+[ \t]+(\d+)[ \t]+Query[ \t]+SELECT CONNECTION_ID/) {
 | 
						|
      $found= $1;
 | 
						|
      break;
 | 
						|
    }
 | 
						|
  }
 | 
						|
 | 
						|
  # print the result
 | 
						|
  if ($found == $conn_id) {
 | 
						|
    print "Bug#45387: ID match.\n";
 | 
						|
  } else {
 | 
						|
    print "Bug#45387: Expected ID '$conn_id', found '$found' in log file.\n";
 | 
						|
    print "Contents of log file:\n";
 | 
						|
    seek(FILE, 0, 0);
 | 
						|
    while($line= <FILE>) {
 | 
						|
      print $line;
 | 
						|
    }
 | 
						|
  }
 | 
						|
 | 
						|
  close(FILE);
 | 
						|
EOF
 | 
						|
 | 
						|
--remove_file $MYSQLD_DATADIR/bug45387_general.log
 | 
						|
 | 
						|
--echo End of 5.1 tests
 | 
						|
 | 
						|
 | 
						|
--echo #
 | 
						|
--echo # Cleanup
 | 
						|
--echo #
 | 
						|
 | 
						|
# Reset global system variables to initial values if forgotten somewhere above.
 | 
						|
SET global general_log = @old_general_log;
 | 
						|
SET global general_log_file = @old_general_log_file;
 | 
						|
SET global slow_query_log = @old_slow_query_log;
 | 
						|
SET global slow_query_log_file = @old_slow_query_log_file;
 | 
						|
if(!$fixed_bug38124)
 | 
						|
{
 | 
						|
   --disable_query_log
 | 
						|
   let $my_var = `SELECT @old_general_log_file`;
 | 
						|
   eval SET @@global.general_log_file = '$my_var';
 | 
						|
   let $my_var = `SELECT @old_slow_query_log_file`;
 | 
						|
   eval SET @@global.slow_query_log_file = '$my_var';
 | 
						|
   --enable_query_log
 | 
						|
}
 |