diff --git a/source/libs/scheduler/src/schStatus.c b/source/libs/scheduler/src/schStatus.c index a8cac993cf..1e5be8c3de 100644 --- a/source/libs/scheduler/src/schStatus.c +++ b/source/libs/scheduler/src/schStatus.c @@ -41,6 +41,10 @@ SSchStatusFps gSchTaskFps[JOB_TASK_STATUS_MAX] = { {JOB_TASK_STATUS_DROP, schTaskStatusNullEnter, schTaskStatusNullLeave, schTaskStatusNullEvent}, }; +int32_t schSwitchJobStatus(int32_t status, SSchJob* pJob, void* pParam) { + schJobStatusEnter(pJob, status, pParam); +} + diff --git a/source/libs/scheduler/src/scheduler.c b/source/libs/scheduler/src/scheduler.c index cbc6a1c17a..3f797f6c7e 100644 --- a/source/libs/scheduler/src/scheduler.c +++ b/source/libs/scheduler/src/scheduler.c @@ -75,6 +75,14 @@ int32_t schedulerExecJob(SSchedulerReq *pReq, int64_t *pJobId) { SCH_ERR_RET(schJobStatusEnter(&pJob, JOB_TASK_STATUS_INIT, pReq)); + SSchEvent event = {0}; + event.event = SCH_EVENT_BEGIN_OP; + SSchOpEvent opEvent = {0}; + opEvent.type = SCH_OP_EXEC; + opEvent.begin = true; + opEvent.pReq = pReq; + schJobHandleEvent(pJob, &event); + SCH_ERR_RET(schJobStatusEnter(&pJob, JOB_TASK_STATUS_EXEC, pReq)); *pJobId = pJob->refId;