1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-27 18:02:13 +03:00

Bug #53493 : add_to_status does not handle the longlong fields in STATUS_VAR

bytes_received/bytes_sent are ulonglong so they cannot be handled by the 
ulong handling code in add_to_status/add_diff_to_status().

Fixed by adding code to handle these two variables in 
add_to_status()/add_diff_to_status() and making sure they are not a subject
to the ulong handling code.
This commit is contained in:
Georgi Kodinov
2010-07-14 11:50:17 +03:00
parent 1919414fbe
commit 678640019d
2 changed files with 16 additions and 7 deletions

View File

@ -405,12 +405,14 @@ struct system_variables
};
/* per thread status variables */
/**
Per thread status variables.
Must be long/ulong up to last_system_status_var so that
add_to_status/add_diff_to_status can work.
*/
typedef struct system_status_var
{
ulonglong bytes_received;
ulonglong bytes_sent;
ulong com_other;
ulong com_stat[(uint) SQLCOM_END];
ulong created_tmp_disk_tables;
@ -466,13 +468,14 @@ typedef struct system_status_var
Number of statements sent from the client
*/
ulong questions;
ulonglong bytes_received;
ulonglong bytes_sent;
/*
IMPORTANT!
SEE last_system_status_var DEFINITION BELOW.
Below 'last_system_status_var' are all variables which doesn't make any
sense to add to the /global/ status variable counter.
Status variables which it does not make sense to add to
global status variable counter
Below 'last_system_status_var' are all variables that cannot be handled
automatically by add_to_status()/add_diff_to_status().
*/
double last_query_cost;
} STATUS_VAR;