+2
-2
cmd/netsync/main.go
+2
-2
cmd/netsync/main.go
···
345
345
Handler: mux,
346
346
}
347
347
348
+
state.wg.Add(1)
348
349
go func() {
349
-
state.wg.Add(1)
350
350
defer state.wg.Done()
351
351
if err := metricsServer.ListenAndServe(); err != http.ErrServerClosed {
352
352
logger.Error("failed to start metrics server", "err", err)
···
368
368
}
369
369
370
370
// Check for empty queue
371
+
state.wg.Add(1)
371
372
go func() {
372
-
state.wg.Add(1)
373
373
defer state.wg.Done()
374
374
t := time.NewTicker(30 * time.Second)
375
375
for {
+4
-4
cmd/sonar/main.go
+4
-4
cmd/sonar/main.go
···
104
104
pool := sequential.NewScheduler(u.Host, s.HandleStreamEvent)
105
105
106
106
// Start a goroutine to manage the cursor file, saving the current cursor every 5 seconds.
107
+
wg.Add(1)
107
108
go func() {
108
-
wg.Add(1)
109
109
defer wg.Done()
110
110
ticker := time.NewTicker(5 * time.Second)
111
111
logger := logger.With("source", "cursor_file_manager")
···
130
130
}()
131
131
132
132
// Start a goroutine to manage the liveness checker, shutting down if no events are received for 15 seconds
133
+
wg.Add(1)
133
134
go func() {
134
-
wg.Add(1)
135
135
defer wg.Done()
136
136
ticker := time.NewTicker(15 * time.Second)
137
137
lastSeq := int64(0)
···
167
167
}
168
168
169
169
// Startup metrics server
170
+
wg.Add(1)
170
171
go func() {
171
-
wg.Add(1)
172
172
defer wg.Done()
173
173
logger = logger.With("source", "metrics_server")
174
174
···
194
194
}
195
195
defer c.Close()
196
196
197
+
wg.Add(1)
197
198
go func() {
198
-
wg.Add(1)
199
199
defer wg.Done()
200
200
err = events.HandleRepoStream(ctx, c, pool)
201
201
logger.Info("HandleRepoStream returned unexpectedly", "err", err)