mirror of
				https://github.com/MariaDB/server.git
				synced 2025-11-03 20:36:16 +01:00 
			
		
		
		
	On FreeBSD, perl isn't in /usr/bin, its in /usr/local/bin or
elsewhere in the path.
Like storage/{maria/unittest/,}ma_test_* , we use /usr/bin/env to
find perl and run it.
		
	
			
		
			
				
	
	
		
			25 lines
		
	
	
	
		
			668 B
		
	
	
	
		
			Perl
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			25 lines
		
	
	
	
		
			668 B
		
	
	
	
		
			Perl
		
	
	
		
			Executable file
		
	
	
	
	
#!/usr/bin/env perl
 | 
						|
 | 
						|
die <<EEE unless @ARGV;
 | 
						|
Usage: $0 func1 [func2 [ ...] ]
 | 
						|
 | 
						|
This filter (stdin->stdout) removes lines from dbug trace that were generated
 | 
						|
by specified functions and all functions down the call stack. Produces the
 | 
						|
same effect as if the original source had DBUG_PUSH(""); right after
 | 
						|
DBUG_ENTER() and DBUG_POP(); right before DBUG_RETURN in every such a function.
 | 
						|
EEE
 | 
						|
 | 
						|
$re=join('|', @ARGV);
 | 
						|
 | 
						|
while(<STDIN>) {
 | 
						|
  ($thd) = /^(T@\d+)/;
 | 
						|
  print unless $skip{$thd};
 | 
						|
  next unless /^(?:.*: )*((?:\| )*)([<>])($re)\n/o;
 | 
						|
  if ($2 eq '>') {
 | 
						|
    $skip{$thd}=$1.$3 unless $skip{$thd};
 | 
						|
    next;
 | 
						|
  }
 | 
						|
  next if $skip{$thd} ne $1.$3;
 | 
						|
  delete $skip{$thd};
 | 
						|
  print;
 | 
						|
}
 |