mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-31 02:46:29 +01:00 
			
		
		
		
	 37c88445e3
			
		
	
	
	37c88445e3
	
	
	
		
			
			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;
 | |
| }
 |