fix bug, ddl hung due to scheduler not clean task when add task fail
This commit is contained in:
parent
f67f7ccbd3
commit
97f10fdb8a
@ -187,8 +187,6 @@ int ObDDLTaskQueue::add_task_to_last(ObDDLTask *task)
|
||||
if (OB_UNLIKELY(!is_inited_)) {
|
||||
ret = common::OB_NOT_INIT;
|
||||
LOG_WARN("ObDDLTaskQueue has not been inited", K(ret));
|
||||
} else if (has_set_stop()) { /* skip, task queue is stopped, not add*/
|
||||
LOG_INFO("queue is stop, skip add task", K(ret), KPC(task));
|
||||
} else if (OB_ISNULL(task)) {
|
||||
ret = common::OB_INVALID_ARGUMENT;
|
||||
LOG_WARN("invalid argument", K(ret), KP(task));
|
||||
@ -887,7 +885,7 @@ void ObDDLScheduler::run1()
|
||||
lib::set_thread_name("DDLTaskExecutor");
|
||||
THIS_WORKER.set_worker_level(1);
|
||||
THIS_WORKER.set_curr_request_level(1);
|
||||
while (!has_set_stop()) {
|
||||
while (true) {
|
||||
const bool stop = task_queue_.has_set_stop();
|
||||
bool do_idle = false;
|
||||
if (OB_FAIL(task_queue_.get_next_task(task))) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user