mirror of
https://github.com/MariaDB/server.git
synced 2025-01-22 23:04:20 +01:00
Merge quad.:/mnt/raid/alik/MySQL/devel/5.1-rt
into quad.:/mnt/raid/alik/MySQL/devel/bug-35074/5.1-rt-bug35074
This commit is contained in:
commit
1f3c062bc6
3 changed files with 112 additions and 3 deletions
|
@ -162,14 +162,48 @@ root
|
||||||
|
|
||||||
# -- Resetting variables...
|
# -- Resetting variables...
|
||||||
SET GLOBAL max_connections = 151;
|
SET GLOBAL max_connections = 151;
|
||||||
|
|
||||||
|
# -- Stopping Event Scheduler...
|
||||||
SET GLOBAL event_scheduler = OFF;
|
SET GLOBAL event_scheduler = OFF;
|
||||||
|
# -- Waiting for Event Scheduler to stop...
|
||||||
|
|
||||||
# -- That's it. Closing connections...
|
# -- That's it. Closing connections...
|
||||||
|
|
||||||
# -- Restoring default connection...
|
# -- Restoring default connection...
|
||||||
|
|
||||||
|
# -- Waiting for connections to close...
|
||||||
|
|
||||||
|
DROP USER mysqltest_u1@localhost;
|
||||||
|
|
||||||
# -- End of Bug#33507.
|
# -- End of Bug#33507.
|
||||||
|
|
||||||
|
# -- Bug#35074: max_used_connections is not correct.
|
||||||
|
|
||||||
|
FLUSH STATUS;
|
||||||
|
|
||||||
|
SHOW STATUS LIKE 'max_used_connections';
|
||||||
|
Variable_name Value
|
||||||
|
Max_used_connections 1
|
||||||
|
|
||||||
|
# -- Starting Event Scheduler...
|
||||||
|
SET GLOBAL event_scheduler = ON;
|
||||||
|
# -- Waiting for Event Scheduler to start...
|
||||||
|
|
||||||
|
# -- Opening a new connection to check max_used_connections...
|
||||||
|
|
||||||
|
# -- Check that max_used_connections hasn't changed.
|
||||||
|
SHOW STATUS LIKE 'max_used_connections';
|
||||||
|
Variable_name Value
|
||||||
|
Max_used_connections 2
|
||||||
|
|
||||||
|
# -- Closing new connection...
|
||||||
|
|
||||||
|
# -- Stopping Event Scheduler...
|
||||||
|
SET GLOBAL event_scheduler = OFF;
|
||||||
|
# -- Waiting for Event Scheduler to stop...
|
||||||
|
|
||||||
|
# -- End of Bug#35074.
|
||||||
|
|
||||||
# ------------------------------------------------------------------
|
# ------------------------------------------------------------------
|
||||||
# -- End of 5.1 tests
|
# -- End of 5.1 tests
|
||||||
# ------------------------------------------------------------------
|
# ------------------------------------------------------------------
|
||||||
|
|
|
@ -209,22 +209,97 @@ SELECT user FROM information_schema.processlist ORDER BY id;
|
||||||
--echo # -- Resetting variables...
|
--echo # -- Resetting variables...
|
||||||
|
|
||||||
--eval SET GLOBAL max_connections = $saved_max_connections
|
--eval SET GLOBAL max_connections = $saved_max_connections
|
||||||
|
|
||||||
|
--echo
|
||||||
|
--echo # -- Stopping Event Scheduler...
|
||||||
SET GLOBAL event_scheduler = OFF;
|
SET GLOBAL event_scheduler = OFF;
|
||||||
|
|
||||||
|
--echo # -- Waiting for Event Scheduler to stop...
|
||||||
|
let $wait_condition =
|
||||||
|
SELECT COUNT(*) = 0
|
||||||
|
FROM information_schema.processlist
|
||||||
|
WHERE user = 'event_scheduler';
|
||||||
|
--source include/wait_condition.inc
|
||||||
|
|
||||||
--echo
|
--echo
|
||||||
--echo # -- That's it. Closing connections...
|
--echo # -- That's it. Closing connections...
|
||||||
--disconnect con_1
|
--disconnect con_1
|
||||||
--disconnect con_2
|
--disconnect con_2
|
||||||
|
--disconnect con_3
|
||||||
--disconnect con_super_1
|
--disconnect con_super_1
|
||||||
|
|
||||||
--echo
|
--echo
|
||||||
--echo # -- Restoring default connection...
|
--echo # -- Restoring default connection...
|
||||||
--connect (default,localhost,root,,test)
|
--connect (default,localhost,root,,test)
|
||||||
|
|
||||||
|
--echo
|
||||||
|
--echo # -- Waiting for connections to close...
|
||||||
|
let $wait_condition =
|
||||||
|
SELECT COUNT(*) = 1
|
||||||
|
FROM information_schema.processlist
|
||||||
|
WHERE db = 'test';
|
||||||
|
--source include/wait_condition.inc
|
||||||
|
|
||||||
|
--echo
|
||||||
|
DROP USER mysqltest_u1@localhost;
|
||||||
|
|
||||||
--echo
|
--echo
|
||||||
--echo # -- End of Bug#33507.
|
--echo # -- End of Bug#33507.
|
||||||
--echo
|
--echo
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
|
||||||
|
--echo # -- Bug#35074: max_used_connections is not correct.
|
||||||
|
--echo
|
||||||
|
|
||||||
|
FLUSH STATUS;
|
||||||
|
|
||||||
|
--echo
|
||||||
|
SHOW STATUS LIKE 'max_used_connections';
|
||||||
|
|
||||||
|
--echo
|
||||||
|
--echo # -- Starting Event Scheduler...
|
||||||
|
SET GLOBAL event_scheduler = ON;
|
||||||
|
|
||||||
|
--echo # -- Waiting for Event Scheduler to start...
|
||||||
|
let $wait_condition =
|
||||||
|
SELECT COUNT(*) = 1
|
||||||
|
FROM information_schema.processlist
|
||||||
|
WHERE user = 'event_scheduler';
|
||||||
|
--source include/wait_condition.inc
|
||||||
|
|
||||||
|
# NOTE: We should use a new connection here instead of reconnect in order to
|
||||||
|
# avoid races (we can not for sure when the connection being disconnected is
|
||||||
|
# actually disconnected on the server).
|
||||||
|
|
||||||
|
--echo
|
||||||
|
--echo # -- Opening a new connection to check max_used_connections...
|
||||||
|
--connect (con_1,localhost,root)
|
||||||
|
|
||||||
|
--echo
|
||||||
|
--echo # -- Check that max_used_connections hasn't changed.
|
||||||
|
SHOW STATUS LIKE 'max_used_connections';
|
||||||
|
|
||||||
|
--echo
|
||||||
|
--echo # -- Closing new connection...
|
||||||
|
--disconnect con_1
|
||||||
|
--connection default
|
||||||
|
|
||||||
|
--echo
|
||||||
|
--echo # -- Stopping Event Scheduler...
|
||||||
|
SET GLOBAL event_scheduler = OFF;
|
||||||
|
|
||||||
|
--echo # -- Waiting for Event Scheduler to stop...
|
||||||
|
let $wait_condition =
|
||||||
|
SELECT COUNT(*) = 0
|
||||||
|
FROM information_schema.processlist
|
||||||
|
WHERE user = 'event_scheduler';
|
||||||
|
--source include/wait_condition.inc
|
||||||
|
|
||||||
|
--echo
|
||||||
|
--echo # -- End of Bug#35074.
|
||||||
|
--echo
|
||||||
|
|
||||||
--echo # ------------------------------------------------------------------
|
--echo # ------------------------------------------------------------------
|
||||||
--echo # -- End of 5.1 tests
|
--echo # -- End of 5.1 tests
|
||||||
--echo # ------------------------------------------------------------------
|
--echo # ------------------------------------------------------------------
|
||||||
|
|
|
@ -4776,6 +4776,9 @@ static void create_new_thread(THD *thd)
|
||||||
|
|
||||||
++connection_count;
|
++connection_count;
|
||||||
|
|
||||||
|
if (connection_count > max_used_connections)
|
||||||
|
max_used_connections= connection_count;
|
||||||
|
|
||||||
pthread_mutex_unlock(&LOCK_connection_count);
|
pthread_mutex_unlock(&LOCK_connection_count);
|
||||||
|
|
||||||
/* Start a new thread to handle connection. */
|
/* Start a new thread to handle connection. */
|
||||||
|
@ -4791,9 +4794,6 @@ static void create_new_thread(THD *thd)
|
||||||
|
|
||||||
thread_count++;
|
thread_count++;
|
||||||
|
|
||||||
if (thread_count - delayed_insert_threads > max_used_connections)
|
|
||||||
max_used_connections= thread_count - delayed_insert_threads;
|
|
||||||
|
|
||||||
thread_scheduler.add_connection(thd);
|
thread_scheduler.add_connection(thd);
|
||||||
|
|
||||||
DBUG_VOID_RETURN;
|
DBUG_VOID_RETURN;
|
||||||
|
|
Loading…
Add table
Reference in a new issue