Create thread specific zombie queues

Because each thread has their own epoll file descriptor and only one
thread can process a DCB, it makes sense to move to a per thread zombie
queue. This removes one of the last restrictions on scalability.
This commit is contained in:
Markus Makela
2016-10-26 21:55:24 +03:00
parent f77f78360e
commit 076b810c1e
6 changed files with 81 additions and 216 deletions

View File

@ -319,6 +319,8 @@ session_link_dcb(SESSION *session, DCB *dcb)
}
atomic_add(&session->refcount, 1);
dcb->session = session;
/** Move this DCB under the same thread */
dcb->owner = session->client_dcb->owner;
spinlock_release(&session->ses_lock);
return true;
}