MDEV-21343 Threadpool/Unix- wait_begin() function does not wake/create threads, when it should

Fixed the condition for waking up/creating another thread.

If there is some work to do (if the request queue is not empty),
a thread should be woken or created.

The condition was incorrect since 18c9b345b4
This commit is contained in:
Vladislav Vaintroub 2019-12-17 21:57:40 +01:00
commit 189fa30085

View file

@ -1339,7 +1339,7 @@ void wait_begin(thread_group_t *thread_group)
DBUG_ASSERT(thread_group->connection_count > 0);
if ((thread_group->active_thread_count == 0) &&
(is_queue_empty(thread_group) || !thread_group->listener))
(!is_queue_empty(thread_group) || !thread_group->listener))
{
/*
Group might stall while this thread waits, thus wake