Skip to content

Commit ac1c209

Browse files
Deflake flagged_driver_test by expanding mutex (#6062)
1 parent 4d2e6c1 commit ac1c209

File tree

2 files changed

+9
-7
lines changed

2 files changed

+9
-7
lines changed

internal/events/flagged_driver.go

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -80,15 +80,15 @@ func (f *flaggedDriver) Subscribe(ctx context.Context, topic string) (<-chan *me
8080
base = nil
8181
continue
8282
}
83-
out <- msg
8483
f.readMessages.Add(ctx, 1, metric.WithAttributes(attribute.Bool("experiment", false)))
84+
out <- msg
8585
case msg, ok := <-experiment:
8686
if !ok {
8787
experiment = nil
8888
continue
8989
}
90-
out <- msg
9190
f.readMessages.Add(ctx, 1, metric.WithAttributes(attribute.Bool("experiment", true)))
91+
out <- msg
9292
case <-ctx.Done():
9393
return
9494
}
@@ -149,5 +149,7 @@ func makeFlaggedDriver(ctx context.Context, cfg *serverconfig.EventConfig, flagC
149149
return ret, ret, closer, nil
150150
}
151151

152-
var _ message.Publisher = (*flaggedDriver)(nil)
153-
var _ message.Subscriber = (*flaggedDriver)(nil)
152+
var (
153+
_ message.Publisher = (*flaggedDriver)(nil)
154+
_ message.Subscriber = (*flaggedDriver)(nil)
155+
)

internal/events/flagged_driver_test.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,9 @@ alternate_message_driver:
109109
t.Parallel()
110110
ctx := context.Background()
111111

112+
metricMutex.Lock() // Can run in parallel with non-metric-measuring tests
113+
defer metricMutex.Unlock()
114+
112115
config := serverconfig.Config{
113116
Events: serverconfig.EventConfig{
114117
Driver: constants.FlaggedDriver,
@@ -153,9 +156,6 @@ alternate_message_driver:
153156
})
154157
<-eventer.Running()
155158

156-
metricMutex.Lock()
157-
defer metricMutex.Unlock()
158-
159159
sendBefore := getMetric(t, reader, "events_published", tt.sendExperiment)
160160
readBefore := getMetric(t, reader, "events_read", tt.sendExperiment)
161161

0 commit comments

Comments
 (0)