From 6acfa45f2abdb6ece3a1f3f21d6c2b2b8d258c1b Mon Sep 17 00:00:00 2001 From: Diptanu Choudhury Date: Fri, 28 Oct 2016 10:57:35 -0700 Subject: [PATCH] Making the executor lock the logger --- client/driver/executor/executor.go | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/client/driver/executor/executor.go b/client/driver/executor/executor.go index f17122e45dc2..1c6b15744df2 100644 --- a/client/driver/executor/executor.go +++ b/client/driver/executor/executor.go @@ -374,11 +374,15 @@ func (e *UniversalExecutor) UpdateTask(task *structs.Task) error { e.ctx.Task = task // Updating Log Config - fileSize := int64(task.LogConfig.MaxFileSizeMB * 1024 * 1024) - e.lro.MaxFiles = task.LogConfig.MaxFiles - e.lro.FileSize = fileSize - e.lre.MaxFiles = task.LogConfig.MaxFiles - e.lre.FileSize = fileSize + e.rotatorLock.Lock() + if e.lro != nil && e.lre != nil { + fileSize := int64(task.LogConfig.MaxFileSizeMB * 1024 * 1024) + e.lro.MaxFiles = task.LogConfig.MaxFiles + e.lro.FileSize = fileSize + e.lre.MaxFiles = task.LogConfig.MaxFiles + e.lre.FileSize = fileSize + } + e.rotatorLock.Unlock() // Re-syncing task with Consul agent if e.consulSyncer != nil {