mariadb/mysql-test/t/not_embedded_server.test
Sven Sandberg 3be6d967c5 BUG#39851: race between check_testcase and tests running 'show processlist'
Problem 1: not_embedded_server runs SELECT FROM I_S.PROCESSLIST near the beginning.
check_testcase executes a query to the server before that. There is a race here,
because there is no guarantee that the thread executing check_testcase's query is
finished.
Problem 2: The SELECT FROM I_S.PROCESSLIST doens't seem very useful in the test.
It's at least misplaced.
Fix to both problems: Comment out SELECT FROM I_S.PROCESSLIST.


mysql-test/t/not_embedded_server.test:
  Commented out failing / useless test.
2008-10-18 20:36:34 +02:00

75 lines
2 KiB
Text

#
# Here we collect tests that doesn't work with the embedded server
#
-- source include/not_embedded.inc
# The following fails sporadically because 'check-testcase' runs
# queries before this test and there is no way to guarantee that any
# previous process finishes. The purpose of the test is not clearly
# stated, there is no reference to any bug report, and "select from
# I_S from prepared statement" doesn't look like something that's
# really imporant to test. I'm commenting out this for now. If
# anyone wants to keep this, please fix the race and motivate why we
# need to test this. If you see this comment and it is after mid-2009
# or so, feel free to remove this test from the file. /Sven
#
#
## Show full process list with prepare
## To not show other connections, this must be the first test and we must
## have a server restart before this one
##
## We don't have any 4.1 tests as we use I_S to query the PROCESSLIST to
## exclude system threads that may/may not be active in the server
## (namely the ndb injector thread)
##
## End of 4.1 tests
#
#prepare stmt1 from ' SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST WHERE COMMAND!=\'Daemon\' ';
#--replace_column 1 number 6 time 3 localhost
#execute stmt1;
#deallocate prepare stmt1;
#
# Bug#31222: com_% global status counters behave randomly with
# mysql_change_user.
#
# Moved from change_user.test due to Bug#34517: SHOW GLOBAL STATUS does not
# work properly in embedded server.
#
# TODO: move it back when Bug#34517 is fixed.
#
FLUSH STATUS;
--disable_result_log
--disable_query_log
let $i = 100;
while ($i)
{
dec $i;
SELECT 1;
}
--enable_query_log
--enable_result_log
let $before= query_get_value(SHOW GLOBAL STATUS LIKE 'com_select',Value,1);
--change_user
let $after= query_get_value(SHOW GLOBAL STATUS LIKE 'com_select',Value,1);
if (`select $after != $before`){
SHOW GLOBAL STATUS LIKE 'com_select';
die The value of com_select changed during change_user;
}
echo Value of com_select did not change;
# End of 5.1 tests