Improving performance on MySQL_Session::IdleTime()

This affects the epoll_threads. Will be way faster to determine if the connection is idle
pull/738/head
René Cannaò 10 years ago
parent f3d9763b7b
commit 05d9655ef9

@ -109,6 +109,8 @@ class MySQL_Session
unsigned long long start_time;
unsigned long long pause_until;
unsigned long long idle_since;
// pointers
MySQL_Thread *thread;
Query_Processor_Output *qpo;

@ -2014,6 +2014,7 @@ __run_skip_1:
mysess->thread=NULL;
unregister_session(i);
exit_cond=true;
mysess->idle_since = curtime - mysess->IdleTime();
idle_mysql_sessions->add(mysess);
break;
}
@ -2321,7 +2322,8 @@ __run_skip_1a:
uint32_t sess_pos=mysess_idx;
MySQL_Session *mysess=(MySQL_Session *)mysql_sessions->index(sess_pos);
unsigned long long sess_time = mysess->IdleTime();
//unsigned long long sess_time = mysess->IdleTime();
unsigned long long sess_time = curtime - mysess->idle_since;
if ( (sess_time/1000 > (unsigned long long)mysql_thread___wait_timeout) ) {
mysess->killed=true;
//uint32_t sess_thr_id=mysess->thread_session_id;

Loading…
Cancel
Save