[Fix](ScannerScheduler) fix dead lock when shutdown group_local_scan_thread_pool (#21553)

This commit is contained in:
airborne12
2023-07-06 13:09:37 +08:00
committed by GitHub
parent 013bfc6a06
commit 009b300abd

View File

@ -66,6 +66,7 @@ ScannerScheduler::~ScannerScheduler() {
_is_closed = true;
_task_group_local_scan_queue->close();
_scheduler_pool->shutdown();
_local_scan_thread_pool->shutdown();
_remote_scan_thread_pool->shutdown();
@ -74,14 +75,14 @@ ScannerScheduler::~ScannerScheduler() {
_scheduler_pool->wait();
_local_scan_thread_pool->join();
_remote_scan_thread_pool->wait();
_limited_scan_thread_pool->wait();
_group_local_scan_thread_pool->wait();
for (int i = 0; i < QUEUE_NUM; i++) {
delete _pending_queues[i];
}
delete[] _pending_queues;
_task_group_local_scan_queue->close();
_group_local_scan_thread_pool->wait();
}
Status ScannerScheduler::init(ExecEnv* env) {