diff --git a/fe/fe-core/src/main/java/org/apache/doris/load/ExportJob.java b/fe/fe-core/src/main/java/org/apache/doris/load/ExportJob.java index 938a9d7711a51a..63d88de46af017 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/load/ExportJob.java +++ b/fe/fe-core/src/main/java/org/apache/doris/load/ExportJob.java @@ -665,7 +665,7 @@ public synchronized boolean updateState(ExportJob.JobState newState, boolean isR } // we only persist Pending/Cancel/Finish state if (!isReplay && newState != JobState.IN_QUEUE && newState != JobState.EXPORTING) { - Env.getCurrentEnv().getEditLog().logExportUpdateState(id, newState); + Env.getCurrentEnv().getEditLog().logExportUpdateState(this, newState); } return true; } @@ -846,10 +846,9 @@ public StateTransfer() { } // used for persisting one log - public StateTransfer(long jobId, JobState state) { - this.jobId = jobId; + public StateTransfer(ExportJob job, JobState state) { + this.jobId = job.getId(); this.state = state; - ExportJob job = Env.getCurrentEnv().getExportMgr().getJob(jobId); this.startTimeMs = job.getStartTimeMs(); this.finishTimeMs = job.getFinishTimeMs(); this.failMsg = job.getFailMsg(); diff --git a/fe/fe-core/src/main/java/org/apache/doris/persist/EditLog.java b/fe/fe-core/src/main/java/org/apache/doris/persist/EditLog.java index 87b2b746d5e31f..963a1e06c8a6f6 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/persist/EditLog.java +++ b/fe/fe-core/src/main/java/org/apache/doris/persist/EditLog.java @@ -1476,8 +1476,8 @@ public void logExportCreate(ExportJob job) { logEdit(OperationType.OP_EXPORT_CREATE, job); } - public void logExportUpdateState(long jobId, ExportJob.JobState newState) { - ExportJob.StateTransfer transfer = new ExportJob.StateTransfer(jobId, newState); + public void logExportUpdateState(ExportJob job, ExportJob.JobState newState) { + ExportJob.StateTransfer transfer = new ExportJob.StateTransfer(job, newState); logEdit(OperationType.OP_EXPORT_UPDATE_STATE, transfer); }