fixes for the status_user.test in ps protocol
sql/sql_class.cc: reset userstat_running after the data were colleced to prevent double accounting. don't assert for COM_QUERY, many more are possible. don't update_stats() here, it's too late, lex->sql_command may be already reset sql/sql_parse.cc: update_stats() here, when the current arena is still valid
This commit is contained in:
parent
5f47217e2e
commit
a117dfb087
@ -127,20 +127,40 @@ test t1 6 13 13
|
|||||||
show index_statistics;
|
show index_statistics;
|
||||||
Table_schema Table_name Index_name Rows_read
|
Table_schema Table_name Index_name Rows_read
|
||||||
test t1 PRIMARY 2
|
test t1 PRIMARY 2
|
||||||
select TOTAL_CONNECTIONS, CONCURRENT_CONNECTIONS, ROWS_READ, ROWS_SENT,
|
select TOTAL_CONNECTIONS, CONCURRENT_CONNECTIONS, ROWS_READ, ROWS_SENT, ROWS_DELETED, ROWS_INSERTED, ROWS_UPDATED, SELECT_COMMANDS, UPDATE_COMMANDS, OTHER_COMMANDS, COMMIT_TRANSACTIONS, ROLLBACK_TRANSACTIONS, DENIED_CONNECTIONS, LOST_CONNECTIONS, ACCESS_DENIED, EMPTY_QUERIES from information_schema.client_statistics;;
|
||||||
ROWS_DELETED, ROWS_INSERTED, ROWS_UPDATED, SELECT_COMMANDS,
|
TOTAL_CONNECTIONS 1
|
||||||
UPDATE_COMMANDS, OTHER_COMMANDS, COMMIT_TRANSACTIONS,
|
CONCURRENT_CONNECTIONS 0
|
||||||
ROLLBACK_TRANSACTIONS, DENIED_CONNECTIONS, LOST_CONNECTIONS,
|
ROWS_READ 6
|
||||||
ACCESS_DENIED, EMPTY_QUERIES from information_schema.client_statistics;
|
ROWS_SENT 2
|
||||||
TOTAL_CONNECTIONS CONCURRENT_CONNECTIONS ROWS_READ ROWS_SENT ROWS_DELETED ROWS_INSERTED ROWS_UPDATED SELECT_COMMANDS UPDATE_COMMANDS OTHER_COMMANDS COMMIT_TRANSACTIONS ROLLBACK_TRANSACTIONS DENIED_CONNECTIONS LOST_CONNECTIONS ACCESS_DENIED EMPTY_QUERIES
|
ROWS_DELETED 1
|
||||||
1 0 6 2 1 8 5 3 11 9 10 2 0 0 0 1
|
ROWS_INSERTED 8
|
||||||
select TOTAL_CONNECTIONS, CONCURRENT_CONNECTIONS, ROWS_READ, ROWS_SENT,
|
ROWS_UPDATED 5
|
||||||
ROWS_DELETED, ROWS_INSERTED, ROWS_UPDATED, SELECT_COMMANDS,
|
SELECT_COMMANDS 3
|
||||||
UPDATE_COMMANDS, OTHER_COMMANDS, COMMIT_TRANSACTIONS,
|
UPDATE_COMMANDS 11
|
||||||
ROLLBACK_TRANSACTIONS, DENIED_CONNECTIONS, LOST_CONNECTIONS,
|
OTHER_COMMANDS 9
|
||||||
ACCESS_DENIED, EMPTY_QUERIES from information_schema.user_statistics;
|
COMMIT_TRANSACTIONS 10
|
||||||
TOTAL_CONNECTIONS CONCURRENT_CONNECTIONS ROWS_READ ROWS_SENT ROWS_DELETED ROWS_INSERTED ROWS_UPDATED SELECT_COMMANDS UPDATE_COMMANDS OTHER_COMMANDS COMMIT_TRANSACTIONS ROLLBACK_TRANSACTIONS DENIED_CONNECTIONS LOST_CONNECTIONS ACCESS_DENIED EMPTY_QUERIES
|
ROLLBACK_TRANSACTIONS 2
|
||||||
1 0 6 2 1 8 5 3 11 9 10 2 0 0 0 1
|
DENIED_CONNECTIONS 0
|
||||||
|
LOST_CONNECTIONS 0
|
||||||
|
ACCESS_DENIED 0
|
||||||
|
EMPTY_QUERIES 1
|
||||||
|
select TOTAL_CONNECTIONS, CONCURRENT_CONNECTIONS, ROWS_READ, ROWS_SENT, ROWS_DELETED, ROWS_INSERTED, ROWS_UPDATED, SELECT_COMMANDS, UPDATE_COMMANDS, OTHER_COMMANDS, COMMIT_TRANSACTIONS, ROLLBACK_TRANSACTIONS, DENIED_CONNECTIONS, LOST_CONNECTIONS, ACCESS_DENIED, EMPTY_QUERIES from information_schema.user_statistics;;
|
||||||
|
TOTAL_CONNECTIONS 1
|
||||||
|
CONCURRENT_CONNECTIONS 0
|
||||||
|
ROWS_READ 6
|
||||||
|
ROWS_SENT 2
|
||||||
|
ROWS_DELETED 1
|
||||||
|
ROWS_INSERTED 8
|
||||||
|
ROWS_UPDATED 5
|
||||||
|
SELECT_COMMANDS 3
|
||||||
|
UPDATE_COMMANDS 11
|
||||||
|
OTHER_COMMANDS 9
|
||||||
|
COMMIT_TRANSACTIONS 10
|
||||||
|
ROLLBACK_TRANSACTIONS 2
|
||||||
|
DENIED_CONNECTIONS 0
|
||||||
|
LOST_CONNECTIONS 0
|
||||||
|
ACCESS_DENIED 0
|
||||||
|
EMPTY_QUERIES 1
|
||||||
flush table_statistics;
|
flush table_statistics;
|
||||||
flush index_statistics;
|
flush index_statistics;
|
||||||
select * from information_schema.index_statistics;
|
select * from information_schema.index_statistics;
|
||||||
|
@ -161,9 +161,9 @@ SELECT * FROM mysql.procs_priv;
|
|||||||
Host Db User Routine_name Routine_type Grantor Proc_priv Timestamp
|
Host Db User Routine_name Routine_type Grantor Proc_priv Timestamp
|
||||||
SELECT upgrade_alter_func();
|
SELECT upgrade_alter_func();
|
||||||
ERROR HY000: The user specified as a definer ('create_rout_db'@'localhost') does not exist
|
ERROR HY000: The user specified as a definer ('create_rout_db'@'localhost') does not exist
|
||||||
USE bug42217_db;
|
USE test;
|
||||||
DROP FUNCTION upgrade_del_func;
|
DROP FUNCTION bug42217_db.upgrade_del_func;
|
||||||
DROP FUNCTION upgrade_alter_func;
|
DROP FUNCTION bug42217_db.upgrade_alter_func;
|
||||||
DROP DATABASE bug42217_db;
|
DROP DATABASE bug42217_db;
|
||||||
DROP USER 'create_rout_db'@'localhost';
|
DROP USER 'create_rout_db'@'localhost';
|
||||||
call mtr.add_suppression("Slave: Operation DROP USER failed for 'create_rout_db'@'localhost' Error_code: 1396");
|
call mtr.add_suppression("Slave: Operation DROP USER failed for 'create_rout_db'@'localhost' Error_code: 1396");
|
||||||
|
@ -205,9 +205,9 @@ SELECT upgrade_alter_func();
|
|||||||
disconnect create_rout_db_master;
|
disconnect create_rout_db_master;
|
||||||
disconnect create_rout_db_slave;
|
disconnect create_rout_db_slave;
|
||||||
connection master;
|
connection master;
|
||||||
USE bug42217_db;
|
USE test;
|
||||||
DROP FUNCTION upgrade_del_func;
|
DROP FUNCTION bug42217_db.upgrade_del_func;
|
||||||
DROP FUNCTION upgrade_alter_func;
|
DROP FUNCTION bug42217_db.upgrade_alter_func;
|
||||||
DROP DATABASE bug42217_db;
|
DROP DATABASE bug42217_db;
|
||||||
DROP USER 'create_rout_db'@'localhost';
|
DROP USER 'create_rout_db'@'localhost';
|
||||||
|
|
||||||
|
@ -66,16 +66,8 @@ select * from information_schema.index_statistics;
|
|||||||
select * from information_schema.table_statistics;
|
select * from information_schema.table_statistics;
|
||||||
show table_statistics;
|
show table_statistics;
|
||||||
show index_statistics;
|
show index_statistics;
|
||||||
select TOTAL_CONNECTIONS, CONCURRENT_CONNECTIONS, ROWS_READ, ROWS_SENT,
|
--query_vertical select TOTAL_CONNECTIONS, CONCURRENT_CONNECTIONS, ROWS_READ, ROWS_SENT, ROWS_DELETED, ROWS_INSERTED, ROWS_UPDATED, SELECT_COMMANDS, UPDATE_COMMANDS, OTHER_COMMANDS, COMMIT_TRANSACTIONS, ROLLBACK_TRANSACTIONS, DENIED_CONNECTIONS, LOST_CONNECTIONS, ACCESS_DENIED, EMPTY_QUERIES from information_schema.client_statistics;
|
||||||
ROWS_DELETED, ROWS_INSERTED, ROWS_UPDATED, SELECT_COMMANDS,
|
--query_vertical select TOTAL_CONNECTIONS, CONCURRENT_CONNECTIONS, ROWS_READ, ROWS_SENT, ROWS_DELETED, ROWS_INSERTED, ROWS_UPDATED, SELECT_COMMANDS, UPDATE_COMMANDS, OTHER_COMMANDS, COMMIT_TRANSACTIONS, ROLLBACK_TRANSACTIONS, DENIED_CONNECTIONS, LOST_CONNECTIONS, ACCESS_DENIED, EMPTY_QUERIES from information_schema.user_statistics;
|
||||||
UPDATE_COMMANDS, OTHER_COMMANDS, COMMIT_TRANSACTIONS,
|
|
||||||
ROLLBACK_TRANSACTIONS, DENIED_CONNECTIONS, LOST_CONNECTIONS,
|
|
||||||
ACCESS_DENIED, EMPTY_QUERIES from information_schema.client_statistics;
|
|
||||||
select TOTAL_CONNECTIONS, CONCURRENT_CONNECTIONS, ROWS_READ, ROWS_SENT,
|
|
||||||
ROWS_DELETED, ROWS_INSERTED, ROWS_UPDATED, SELECT_COMMANDS,
|
|
||||||
UPDATE_COMMANDS, OTHER_COMMANDS, COMMIT_TRANSACTIONS,
|
|
||||||
ROLLBACK_TRANSACTIONS, DENIED_CONNECTIONS, LOST_CONNECTIONS,
|
|
||||||
ACCESS_DENIED, EMPTY_QUERIES from information_schema.user_statistics;
|
|
||||||
flush table_statistics;
|
flush table_statistics;
|
||||||
flush index_statistics;
|
flush index_statistics;
|
||||||
select * from information_schema.index_statistics;
|
select * from information_schema.index_statistics;
|
||||||
|
@ -921,9 +921,6 @@ void THD::update_stats(void)
|
|||||||
/* sql_command == SQLCOM_END in case of parse errors or quit */
|
/* sql_command == SQLCOM_END in case of parse errors or quit */
|
||||||
if (lex->sql_command != SQLCOM_END)
|
if (lex->sql_command != SQLCOM_END)
|
||||||
{
|
{
|
||||||
/* The replication thread has the COM_CONNECT command */
|
|
||||||
DBUG_ASSERT(command == COM_QUERY || command == COM_CONNECT);
|
|
||||||
|
|
||||||
/* A SQL query. */
|
/* A SQL query. */
|
||||||
if (lex->sql_command == SQLCOM_SELECT)
|
if (lex->sql_command == SQLCOM_SELECT)
|
||||||
select_commands++;
|
select_commands++;
|
||||||
@ -959,9 +956,8 @@ void THD::update_all_stats()
|
|||||||
status_var_add(status_var.cpu_time, cpu_time);
|
status_var_add(status_var.cpu_time, cpu_time);
|
||||||
status_var_add(status_var.busy_time, busy_time);
|
status_var_add(status_var.busy_time, busy_time);
|
||||||
|
|
||||||
/* Updates THD stats and the global user stats. */
|
|
||||||
update_stats();
|
|
||||||
update_global_user_stats(this, TRUE, save_time);
|
update_global_user_stats(this, TRUE, save_time);
|
||||||
|
userstat_running= 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -5040,6 +5040,7 @@ create_sp_error:
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
thd_proc_info(thd, "query end");
|
thd_proc_info(thd, "query end");
|
||||||
|
thd->update_stats();
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Binlog-related cleanup:
|
Binlog-related cleanup:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user