From 74f0b2b0537539ccf6f757a9fcd012b183f65eb1 Mon Sep 17 00:00:00 2001 From: Newnius Date: Tue, 5 May 2020 17:22:11 +0800 Subject: [PATCH] update --- src/history_logger.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/history_logger.go b/src/history_logger.go index 928390f..f4e5fc2 100644 --- a/src/history_logger.go +++ b/src/history_logger.go @@ -12,6 +12,7 @@ type JobHistoryLogger struct { jobStatus JobStatus resources []NodeStatus killedFlag bool + mu sync.Mutex } var jobHistoryLoggerInstance *JobHistoryLogger @@ -35,12 +36,16 @@ func (jhl *JobHistoryLogger) init() { } func (jhl *JobHistoryLogger) submitJob(job Job) { + jhl.mu.Lock() + defer jhl.mu.Unlock() log.Debug("submit job", job.Name) jhl.jobs[job.Name] = job jhl.tasks[job.Name] = []TaskStatus{} } func (jhl *JobHistoryLogger) updateJobStatus(jobName string, state State) { + jhl.mu.Lock() + defer jhl.mu.Unlock() log.Debug("update job status", jobName) if job, ok := jhl.jobs[jobName]; ok { job.Status = state @@ -48,6 +53,8 @@ func (jhl *JobHistoryLogger) updateJobStatus(jobName string, state State) { } func (jhl *JobHistoryLogger) submitTaskStatus(jobName string, task TaskStatus) { + jhl.mu.Lock() + defer jhl.mu.Unlock() log.Debug("submit job task status", jobName) if tasks, ok := jhl.tasks[jobName]; ok { jhl.tasks[jobName] = append(tasks, task) @@ -55,6 +62,8 @@ func (jhl *JobHistoryLogger) submitTaskStatus(jobName string, task TaskStatus) { } func (jhl *JobHistoryLogger) getTaskStatus(jobName string) []TaskStatus { + jhl.mu.Lock() + defer jhl.mu.Unlock() if _, ok := jhl.tasks[jobName]; ok { return jhl.tasks[jobName] }