mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 20:12:31 +01:00
4f3c8e7723
When using --log --log-output=table, we increment Table_locks_immediate with every query. The wait_condition.inc runs a query a variable number of times, depending on server load, etc. This is a problem, when the test is checking the Table_locks_immediate value. Fix is to adjust the Table_locks_immediate value based on how many times the wait_condition query was executed. mysql-test/include/wait_condition.inc: Add a $wait_condition_reps variable, which lets the caller check how many times the wait_condition query was executed. This is used in the main.status test to adjust the value of Table_locks_immediate (it gets incremented with each query when --log --log-output=table). mysql-test/t/status.test: Adjust Table_locks_immediate value based on how many times the wait_condition query had to run.
59 lines
1.2 KiB
PHP
59 lines
1.2 KiB
PHP
# include/wait_condition.inc
|
|
#
|
|
# SUMMARY
|
|
#
|
|
# Waits until the passed statement returns true, or the operation
|
|
# times out.
|
|
#
|
|
# USAGE
|
|
#
|
|
# let $wait_condition=
|
|
# SELECT c = 3 FROM t;
|
|
# --source include/wait_condition.inc
|
|
#
|
|
# OR
|
|
#
|
|
# let $wait_timeout= 60; # Override default 30 seconds with 60.
|
|
# let $wait_condition=
|
|
# SELECT c = 3 FROM t;
|
|
# --source include/wait_condition.inc
|
|
# --echo Executed the test condition $wait_condition_reps times
|
|
#
|
|
# EXAMPLE
|
|
# events_bugs.test, events_time_zone.test
|
|
#
|
|
|
|
--disable_query_log
|
|
|
|
let $wait_counter= 300;
|
|
if ($wait_timeout)
|
|
{
|
|
let $wait_counter= `SELECT $wait_timeout * 10`;
|
|
}
|
|
# Reset $wait_timeout so that its value won't be used on subsequent
|
|
# calls, and default will be used instead.
|
|
let $wait_timeout= 0;
|
|
|
|
# Keep track of how many times the wait condition is tested
|
|
# This is used by some tests (e.g., main.status)
|
|
let $wait_condition_reps= 0;
|
|
while ($wait_counter)
|
|
{
|
|
let $success= `$wait_condition`;
|
|
inc $wait_condition_reps;
|
|
if ($success)
|
|
{
|
|
let $wait_counter= 0;
|
|
}
|
|
if (!$success)
|
|
{
|
|
real_sleep 0.1;
|
|
dec $wait_counter;
|
|
}
|
|
}
|
|
if (!$success)
|
|
{
|
|
echo Timeout in wait_condition.inc for $wait_condition;
|
|
}
|
|
|
|
--enable_query_log
|