From 700d9df5e0e73c8124a11bedb70d296ce3721fa2 Mon Sep 17 00:00:00 2001 From: Khurram Baig Date: Wed, 8 Sep 2021 23:28:21 +0530 Subject: [PATCH] Fix Concurrency issue in the metrics A double locking was happening in recorder mutex which was creating unexpected behaviour. Lock needs to be done only in the function that calls opencensus stats recorder. --- pkg/pipelinerunmetrics/metrics.go | 3 --- pkg/taskrunmetrics/metrics.go | 3 --- 2 files changed, 6 deletions(-) diff --git a/pkg/pipelinerunmetrics/metrics.go b/pkg/pipelinerunmetrics/metrics.go index 18c2d515166..3d6a7d1ad05 100644 --- a/pkg/pipelinerunmetrics/metrics.go +++ b/pkg/pipelinerunmetrics/metrics.go @@ -281,9 +281,6 @@ func (r *Recorder) RunningPipelineRuns(lister listers.PipelineRunLister) error { // ReportRunningPipelineRuns invokes RunningPipelineRuns on our configured PeriodSeconds // until the context is cancelled. func (r *Recorder) ReportRunningPipelineRuns(ctx context.Context, lister listers.PipelineRunLister) { - r.mutex.Lock() - r.mutex.Unlock() - logger := logging.FromContext(ctx) for { diff --git a/pkg/taskrunmetrics/metrics.go b/pkg/taskrunmetrics/metrics.go index a374a7634ec..c4a97a03b1b 100644 --- a/pkg/taskrunmetrics/metrics.go +++ b/pkg/taskrunmetrics/metrics.go @@ -367,9 +367,6 @@ func (r *Recorder) RunningTaskRuns(lister listers.TaskRunLister) error { // ReportRunningTaskRuns invokes RunningTaskRuns on our configured PeriodSeconds // until the context is cancelled. func (r *Recorder) ReportRunningTaskRuns(ctx context.Context, lister listers.TaskRunLister) { - r.mutex.Lock() - defer r.mutex.Unlock() - logger := logging.FromContext(ctx) for { select {