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

MDEV-4824 userstats - wrong user statistics

(and valgrind warnings)

* move thd userstat initialization to the same function
  that was adding thd userstat to global counters.
* initialize thd->start_bytes_received in THD::init
  (when thd->userstat_running is set)
This commit is contained in:
Sergei Golubchik
2013-11-11 16:17:32 +01:00
parent 80a523dbfb
commit f486f49e8d
10 changed files with 76 additions and 27 deletions

View File

@ -0,0 +1,16 @@
create user foo@localhost identified by 'foo';
flush user_statistics;
set global userstat=1;
select 1;
1
1
select user, bytes_received from information_schema.user_statistics where user = 'foo';
user bytes_received
foo 18
connect(localhost,foo,bar,test,MASTER_PORT,MASTER_SOCKET);
ERROR 28000: Access denied for user 'foo'@'localhost' (using password: YES)
select user, bytes_received from information_schema.user_statistics where user = 'foo';
user bytes_received
foo 18
drop user foo@localhost;
set global userstat=0;

View File

@ -0,0 +1,33 @@
#
# MDEV-4824 userstats - wrong user statistics
#
--source include/not_embedded.inc
create user foo@localhost identified by 'foo';
flush user_statistics;
set global userstat=1;
connect(foo, localhost, foo, foo);
select 1;
disconnect foo;
connection default;
# wait for user_statistics changes to become visible
let $wait_condition= select count(*) = 1 from information_schema.processlist;
--source include/wait_condition.inc
# 41 is for ps-procotol
--replace_result 41 18
select user, bytes_received from information_schema.user_statistics where user = 'foo';
--replace_result $MASTER_MYSOCK MASTER_SOCKET $MASTER_MYPORT MASTER_PORT
--error ER_ACCESS_DENIED_ERROR
connect(foo, localhost, foo, bar);
connection default;
--replace_result 41 18
select user, bytes_received from information_schema.user_statistics where user = 'foo';
drop user foo@localhost;
set global userstat=0;