Backport patch for Bug#31222 (com_% global status counters behave randomly
with mysql_change_user) to 5.0.
This commit is contained in:
parent
a08460b83a
commit
9a6e05d8b9
@ -3,3 +3,10 @@ execute stmt1;
|
|||||||
Id User Host db Command Time State Info
|
Id User Host db Command Time State Info
|
||||||
number root localhost test Query time NULL show full processlist
|
number root localhost test Query time NULL show full processlist
|
||||||
deallocate prepare stmt1;
|
deallocate prepare stmt1;
|
||||||
|
FLUSH STATUS;
|
||||||
|
SHOW GLOBAL STATUS LIKE 'com_select';
|
||||||
|
Variable_name Value
|
||||||
|
Com_select 101
|
||||||
|
SHOW GLOBAL STATUS LIKE 'com_select';
|
||||||
|
Variable_name Value
|
||||||
|
Com_select 101
|
||||||
|
@ -16,3 +16,31 @@ execute stmt1;
|
|||||||
deallocate prepare stmt1;
|
deallocate prepare stmt1;
|
||||||
|
|
||||||
# End of 4.1 tests
|
# End of 4.1 tests
|
||||||
|
|
||||||
|
#
|
||||||
|
# Bug#31222: com_% global status counters behave randomly with
|
||||||
|
# mysql_change_user.
|
||||||
|
#
|
||||||
|
|
||||||
|
FLUSH STATUS;
|
||||||
|
|
||||||
|
--disable_result_log
|
||||||
|
--disable_query_log
|
||||||
|
|
||||||
|
let $i = 100;
|
||||||
|
|
||||||
|
while ($i)
|
||||||
|
{
|
||||||
|
dec $i;
|
||||||
|
|
||||||
|
SELECT 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
--enable_query_log
|
||||||
|
--enable_result_log
|
||||||
|
|
||||||
|
SHOW GLOBAL STATUS LIKE 'com_select';
|
||||||
|
|
||||||
|
--change_user
|
||||||
|
|
||||||
|
SHOW GLOBAL STATUS LIKE 'com_select';
|
||||||
|
@ -391,6 +391,10 @@ void THD::init_for_queries()
|
|||||||
|
|
||||||
void THD::change_user(void)
|
void THD::change_user(void)
|
||||||
{
|
{
|
||||||
|
pthread_mutex_lock(&LOCK_status);
|
||||||
|
add_to_status(&global_status_var, &status_var);
|
||||||
|
pthread_mutex_unlock(&LOCK_status);
|
||||||
|
|
||||||
cleanup();
|
cleanup();
|
||||||
cleanup_done= 0;
|
cleanup_done= 0;
|
||||||
init();
|
init();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user