diff --git a/bin/pt-stalk b/bin/pt-stalk index 9be53f7a..c7a3168b 100755 --- a/bin/pt-stalk +++ b/bin/pt-stalk @@ -467,9 +467,6 @@ rm_tmpdir() { set -u -CMD_PIDOF="$(which pidof)" -CMD_PGREP="$(which pgrep)" - _seq() { local i="$1" awk "BEGIN { for(i=1; i<=$i; i++) print i; }" @@ -629,7 +626,7 @@ collect() { local d="$1" # directory to save results in local p="$2" # prefix for each result file - local mysqld_pid=$(_pidof mysqld | head -n1) + local mysqld_pid=$(_pidof mysqld | awk '{print $1; exit;}') if [ "$CMD_PMAP" -a "$mysqld_pid" ]; then if $CMD_PMAP --help 2>&1 | grep -- -x >/dev/null 2>&1 ; then diff --git a/lib/bash/collect.sh b/lib/bash/collect.sh index 472e5e3c..ed303bcb 100644 --- a/lib/bash/collect.sh +++ b/lib/bash/collect.sh @@ -45,7 +45,7 @@ collect() { local p="$2" # prefix for each result file # Get pidof mysqld. - local mysqld_pid=$(_pidof mysqld | head -n1) + local mysqld_pid=$(_pidof mysqld | awk '{print $1; exit;}') # Get memory allocation info before anything else. if [ "$CMD_PMAP" -a "$mysqld_pid" ]; then diff --git a/t/lib/Cxn.t b/t/lib/Cxn.t index 9e4fb036..980511d7 100644 --- a/t/lib/Cxn.t +++ b/t/lib/Cxn.t @@ -83,11 +83,12 @@ test_var_val( test => 'Default wait_timeout', ); +my $set_calls = 0; my $cxn = make_cxn( dsn_string => 'h=127.1,P=12345,u=msandbox,p=msandbox', set => sub { my ($dbh) = @_; - $dbh->do("SET unique_checks=0"); + $set_calls++; $dbh->do("SET \@a := \@a + 1"); }, ); @@ -122,11 +123,10 @@ test_var_val( test => 'Sets --set-vars', ); -test_var_val( - $cxn->dbh(), - 'unique_checks', - 'OFF', - test => 'Calls set callback', +is( + $set_calls, + 1, + 'Calls set callback' ); $cxn->dbh()->do("SET \@a := 1"); @@ -172,11 +172,10 @@ test_var_val( test => 'Reconnect sets --set-vars', ); -test_var_val( - $cxn->dbh(), - 'unique_checks', - 'OFF', - test => 'Reconnect calls set callback', +is( + $set_calls, + 2, + 'Reconnect calls set callback' ); test_var_val( diff --git a/t/lib/TableParser.t b/t/lib/TableParser.t index e6d54646..e65e6867 100644 --- a/t/lib/TableParser.t +++ b/t/lib/TableParser.t @@ -41,7 +41,8 @@ SKIP: { ok( no_diff( $tp->get_create_table($dbh, 'sakila', 'actor'), - "$sample/sakila.actor", + $sandbox_version ge '5.1' ? "$sample/sakila.actor" + : "$sample/sakila.actor-5.0", cmd_output => 1, ), "get_create_table(sakila.actor)" diff --git a/t/lib/bash.t b/t/lib/bash.t index 6b6f3998..68706d3c 100644 --- a/t/lib/bash.t +++ b/t/lib/bash.t @@ -15,9 +15,10 @@ use PerconaTest; my ($tool) = $PROGRAM_NAME =~ m/([\w-]+)\.t$/; push @ARGV, "$trunk/t/lib/bash/*.sh" unless @ARGV; -$ENV{BIN_DIR} = "$trunk/bin"; -$ENV{LIB_DIR} = "$trunk/lib/bash"; -$ENV{T_LIB_DIR} = "$trunk/t/lib"; +$ENV{BIN_DIR} = "$trunk/bin"; +$ENV{LIB_DIR} = "$trunk/lib/bash"; +$ENV{T_LIB_DIR} = "$trunk/t/lib"; +$ENV{SANDBOX_VERSION} = "$sandbox_version"; system("$trunk/util/test-bash-functions $trunk/t/lib/samples/bash/dummy.sh @ARGV"); diff --git a/t/lib/bash/collect.sh b/t/lib/bash/collect.sh index 0564c666..624e6dd9 100644 --- a/t/lib/bash/collect.sh +++ b/t/lib/bash/collect.sh @@ -62,12 +62,16 @@ cmd_ok \ "innodbstatus2" cmd_ok \ - "grep -q 'error log seems to be /tmp/12345/data/mysqld.log' $p-output" \ + "grep -q 'error log seems to be .*/mysqld.log' $p-output" \ "Finds MySQL error log" -cmd_ok \ - "grep -q 'Status information:' $p-log_error" \ - "debug" +if [[ "$SANDBOX_VERSION" > "5.0" ]]; then + cmd_ok \ + "grep -q 'Status information:' $p-log_error" \ + "debug" +else + is "1" "1" "SKIP Can't determine MySQL 5.0 error log" +fi cmd_ok \ "grep -q 'COMMAND[ ]\+PID[ ]\+USER' $p-lsof" \ diff --git a/t/lib/samples/SchemaIterator/mysql-user-ddl-5.0.txt b/t/lib/samples/SchemaIterator/mysql-user-ddl-5.0.txt index 1aa8a5ba..a78b390d 100644 --- a/t/lib/samples/SchemaIterator/mysql-user-ddl-5.0.txt +++ b/t/lib/samples/SchemaIterator/mysql-user-ddl-5.0.txt @@ -37,7 +37,7 @@ CREATE TABLE `user` ( `max_updates` int(11) unsigned NOT NULL default '0', `max_connections` int(11) unsigned NOT NULL default '0', `max_user_connections` int(11) unsigned NOT NULL default '0', - PRIMARY KEY (`Host`,`User`) + PRIMARY KEY (`Host`,`User`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Users and global privileges' diff --git a/t/lib/samples/tables/sakila.actor-5.0 b/t/lib/samples/tables/sakila.actor-5.0 new file mode 100644 index 00000000..b2451585 --- /dev/null +++ b/t/lib/samples/tables/sakila.actor-5.0 @@ -0,0 +1,8 @@ +CREATE TABLE `actor` ( + `actor_id` smallint(5) unsigned NOT NULL auto_increment, + `first_name` varchar(45) NOT NULL, + `last_name` varchar(45) NOT NULL, + `last_update` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, + PRIMARY KEY (`actor_id`), + KEY `idx_actor_last_name` (`last_name`) +) ENGINE=InnoDB AUTO_INCREMENT=201 DEFAULT CHARSET=utf8