Workaround non portable use of "grep" and "cut" by loading the whole processlist

into temporary table and selecting the correct row with SQL
parent e4700df9
--exec $MYSQL test -e 'show processlist' | grep 'Binlog Dump' | cut -f1 > $MYSQLTEST_VARDIR/tmp/bl_dump_thread_id --exec $MYSQL test -e "show processlist" > $MYSQLTEST_VARDIR/tmp/bl_dump_thread_id
--disable_warnings --disable_warnings
drop table if exists t999; drop table if exists t999;
--enable_warnings --enable_warnings
create temporary table t999 (f int); # Create a table to hold the process list
create temporary table t999(
id int,
user char(255),
host char(255),
db char(255),
Command char(255),
time int,
State char(255),
info char(255)
);
# Load processlist into table, headers will create seom warnings
--disable_warnings
--replace_result $MYSQLTEST_VARDIR "." --replace_result $MYSQLTEST_VARDIR "."
eval LOAD DATA INFILE "$MYSQLTEST_VARDIR/tmp/bl_dump_thread_id" into table t999; eval LOAD DATA INFILE "$MYSQLTEST_VARDIR/tmp/bl_dump_thread_id" into table t999;
let $id = `select f from t999`; --enable_warnings
let $id = `select Id from t999 where Command="Binlog Dump"`;
drop table t999; drop table t999;
...@@ -92,7 +92,16 @@ create temporary table t3 (f int); ...@@ -92,7 +92,16 @@ create temporary table t3 (f int);
create temporary table t4 (f int); create temporary table t4 (f int);
create table t5 (f int); create table t5 (f int);
drop table if exists t999; drop table if exists t999;
create temporary table t999 (f int); create temporary table t999(
id int,
user char(255),
host char(255),
db char(255),
Command char(255),
time int,
State char(255),
info char(255)
);
LOAD DATA INFILE "./tmp/bl_dump_thread_id" into table t999; LOAD DATA INFILE "./tmp/bl_dump_thread_id" into table t999;
drop table t999; drop table t999;
insert into t4 values (1); insert into t4 values (1);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment