1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00

MDEV-33145 Add FLUSH GLOBAL STATUS

- FLUSH GLOBAL STATUS now resets most global_status_vars.
  At this stage, this is mainly to be used for testing.
- FLUSH SESSION STATUS added as an alias for FLUSH STATUS.
- FLUSH STATUS does not require any privilege (before required RELOAD).
- FLUSH GLOBAL STATUS requires RELOAD privilege.
- All global status reset moved to FLUSH GLOBAL STATUS.
- Replication semisync status variables are now reset by
  FLUSH GLOBAL STATUS.
- In test cases, the only changes are:
  - Replace FLUSH STATUS with FLUSH GLOBAL STATUS
  - Replace FLUSH STATUS with FLUSH STATUS; FLUSH GLOBAL STATUS.
    This was only done in a few tests where the test was using SHOW STATUS
    for both local and global variables.
- Uptime_since_flush_status is now always provided, independent if
  ENABLED_PROFILING is enabled when compiling MariaDB.
- @@global.Uptime_since_flush_status is reset on FLUSH GLOBAL STATUS
  and @@session.Uptime_since_flush_status is reset on FLUSH SESSION STATUS.
- When connected, @@session.Uptime_since_flush_status is set to 0.
This commit is contained in:
Monty
2023-12-31 16:23:04 +02:00
committed by Sergei Golubchik
parent d2b39a2c82
commit 775cba4d0f
325 changed files with 787 additions and 525 deletions

View File

@ -5,7 +5,7 @@ SET GLOBAL LOG_OUTPUT = 'FILE';
connect con1,localhost,root,,;
connect con2,localhost,root,,;
connection default;
flush status;
flush global status;
show status like 'Table_lock%';
Variable_name Value
Table_locks_immediate 0
@ -82,7 +82,7 @@ show status like 'last_query_cost';
Variable_name Value
Last_query_cost 0.000000
drop table t1;
FLUSH STATUS;
FLUSH GLOBAL STATUS;
SHOW STATUS LIKE 'max_used_connections';
Variable_name Value
Max_used_connections 1
@ -101,7 +101,7 @@ Max_used_connections 3
SELECT * FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME LIKE 'max_used_connections';
VARIABLE_NAME VARIABLE_VALUE
MAX_USED_CONNECTIONS 3
FLUSH STATUS;
FLUSH GLOBAL STATUS;
SHOW STATUS LIKE 'max_used_connections';
Variable_name Value
Max_used_connections 2
@ -450,7 +450,7 @@ SET GLOBAL log_output = @old_log_output;
#
# MDEV-30543 New status variable: Max_used_connections_time
#
FLUSH STATUS;
FLUSH GLOBAL STATUS;
connect con1,localhost,root,,;
connect con2,localhost,root,,;
connection con1;
@ -466,3 +466,21 @@ expect_1
disconnect con4;
disconnect con3;
disconnect con1;
connection default;
# Test Uptime_since_flush_status
# All results below should be 1
flush global status;
flush session status;
1
1
1
1
1
1
1
1
1
1
#
# end of 11.5 tests
#