Fix accounting bug in mirror_sessions_current

v1.4.0
René Cannaò 9 years ago
parent 5a0078809d
commit 02036575a9

@ -746,7 +746,6 @@ void MySQL_Session::handler___status_WAITING_CLIENT_DATA___STATE_SLEEP___MYSQL_C
int l=mysql_thread___mirror_max_concurrency;
if (thread->mirror_queue_mysql_sessions->len*0.3 > l) l=thread->mirror_queue_mysql_sessions->len*0.3;
if (thread->mirror_queue_mysql_sessions_cache->len <= l) {
__sync_sub_and_fetch(&GloMTH->status_variables.mirror_sessions_current,1);
bool to_cache=true;
if (newsess->mybe) {
if (newsess->mybe->server_myds) {
@ -754,6 +753,7 @@ void MySQL_Session::handler___status_WAITING_CLIENT_DATA___STATE_SLEEP___MYSQL_C
}
}
if (to_cache) {
__sync_sub_and_fetch(&GloMTH->status_variables.mirror_sessions_current,1);
thread->mirror_queue_mysql_sessions_cache->add(newsess);
} else {
delete newsess;

@ -2229,7 +2229,6 @@ __run_skip_1:
int l=mysql_thread___mirror_max_concurrency;
if (mirror_queue_mysql_sessions->len*0.3 > l) l=mirror_queue_mysql_sessions->len*0.3;
if (mirror_queue_mysql_sessions_cache->len <= l) {
__sync_sub_and_fetch(&GloMTH->status_variables.mirror_sessions_current,1);
bool to_cache=true;
if (newsess->mybe) {
if (newsess->mybe->server_myds) {
@ -2237,6 +2236,7 @@ __run_skip_1:
}
}
if (to_cache) {
__sync_sub_and_fetch(&GloMTH->status_variables.mirror_sessions_current,1);
mirror_queue_mysql_sessions_cache->add(newsess);
} else {
delete newsess;
@ -2809,7 +2809,6 @@ void MySQL_Thread::process_all_sessions() {
int l=mysql_thread___mirror_max_concurrency;
if (mirror_queue_mysql_sessions->len*0.3 > l) l=mirror_queue_mysql_sessions->len*0.3;
if (mirror_queue_mysql_sessions_cache->len <= l) {
__sync_sub_and_fetch(&GloMTH->status_variables.mirror_sessions_current,1);
bool to_cache=true;
if (sess->mybe) {
if (sess->mybe->server_myds) {
@ -2817,6 +2816,7 @@ void MySQL_Thread::process_all_sessions() {
}
}
if (to_cache) {
__sync_sub_and_fetch(&GloMTH->status_variables.mirror_sessions_current,1);
mirror_queue_mysql_sessions_cache->add(sess);
} else {
delete sess;

Loading…
Cancel
Save