Skip to content

Commit 249a4e6

Browse files
committed
fix: parent context shadowing issue
1 parent 9bce708 commit 249a4e6

File tree

1 file changed

+24
-24
lines changed

1 file changed

+24
-24
lines changed

workers/session.go

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -45,20 +45,20 @@ func NewSessionUsageSyncWithBlockchainWorker(c *core.Context, interval time.Dura
4545
var msgs []types.Msg
4646
var mu sync.Mutex
4747

48-
eg, ctx := errgroup.WithContext(ctx)
49-
eg.SetLimit(8)
48+
jobGroup, jobCtx := errgroup.WithContext(ctx)
49+
jobGroup.SetLimit(8)
5050

5151
// Iterate over sessions and prepare messages for updates.
5252
for _, val := range items {
5353
item := val
54-
eg.Go(func() error {
54+
jobGroup.Go(func() error {
5555
select {
56-
case <-ctx.Done():
56+
case <-jobCtx.Done():
5757
return nil
5858
default:
5959
}
6060

61-
session, err := c.Client().Session(ctx, item.GetID())
61+
session, err := c.Client().Session(jobCtx, item.GetID())
6262
if err != nil {
6363
return fmt.Errorf("querying session %d from blockchain: %w", item.GetID(), err)
6464
}
@@ -95,7 +95,7 @@ func NewSessionUsageSyncWithBlockchainWorker(c *core.Context, interval time.Dura
9595
}
9696

9797
// Wait until all routines complete.
98-
if err := eg.Wait(); err != nil {
98+
if err := jobGroup.Wait(); err != nil {
9999
return err
100100
}
101101

@@ -126,15 +126,15 @@ func NewSessionUsageSyncWithDatabaseWorker(c *core.Context, interval time.Durati
126126
return fmt.Errorf("retrieving peer statistics from service: %w", err)
127127
}
128128

129-
eg, ctx := errgroup.WithContext(ctx)
130-
eg.SetLimit(8)
129+
jobGroup, jobCtx := errgroup.WithContext(ctx)
130+
jobGroup.SetLimit(8)
131131

132132
// Update the database with the fetched statistics.
133133
for key, val := range items {
134134
peerID, item := key, val
135-
eg.Go(func() error {
135+
jobGroup.Go(func() error {
136136
select {
137-
case <-ctx.Done():
137+
case <-jobCtx.Done():
138138
return nil
139139
default:
140140
}
@@ -174,7 +174,7 @@ func NewSessionUsageSyncWithDatabaseWorker(c *core.Context, interval time.Durati
174174
}
175175

176176
// Wait until all routines complete.
177-
if err := eg.Wait(); err != nil {
177+
if err := jobGroup.Wait(); err != nil {
178178
return err
179179
}
180180

@@ -203,15 +203,15 @@ func NewSessionUsageValidateWorker(c *core.Context, interval time.Duration) cron
203203
return fmt.Errorf("retrieving sessions from database: %w", err)
204204
}
205205

206-
eg, ctx := errgroup.WithContext(ctx)
207-
eg.SetLimit(8)
206+
jobGroup, jobCtx := errgroup.WithContext(ctx)
207+
jobGroup.SetLimit(8)
208208

209209
// Validate session limits and remove peers if needed.
210210
for _, val := range items {
211211
item := val
212-
eg.Go(func() error {
212+
jobGroup.Go(func() error {
213213
select {
214-
case <-ctx.Done():
214+
case <-jobCtx.Done():
215215
return nil
216216
default:
217217
}
@@ -250,7 +250,7 @@ func NewSessionUsageValidateWorker(c *core.Context, interval time.Duration) cron
250250
// If the session exceeded any limits, remove the associated peer.
251251
if removePeer {
252252
log.Debug("Removing peer from service", "id", item.GetID(), "peer_id", item.GetPeerID())
253-
if err := c.RemovePeerIfExists(ctx, item.GetPeerID()); err != nil {
253+
if err := c.RemovePeerIfExists(jobCtx, item.GetPeerID()); err != nil {
254254
return fmt.Errorf("removing peer %q for session %d from service: %w", item.GetPeerID(), item.GetID(), err)
255255
}
256256
}
@@ -260,7 +260,7 @@ func NewSessionUsageValidateWorker(c *core.Context, interval time.Duration) cron
260260
}
261261

262262
// Wait until all routines complete.
263-
if err := eg.Wait(); err != nil {
263+
if err := jobGroup.Wait(); err != nil {
264264
return err
265265
}
266266

@@ -289,20 +289,20 @@ func NewSessionValidateWorker(c *core.Context, interval time.Duration) cron.Work
289289
return fmt.Errorf("retrieving sessions from database: %w", err)
290290
}
291291

292-
eg, ctx := errgroup.WithContext(ctx)
293-
eg.SetLimit(8)
292+
jobGroup, jobCtx := errgroup.WithContext(ctx)
293+
jobGroup.SetLimit(8)
294294

295295
// Validate session status and consistency.
296296
for _, val := range items {
297297
item := val
298-
eg.Go(func() error {
298+
jobGroup.Go(func() error {
299299
select {
300-
case <-ctx.Done():
300+
case <-jobCtx.Done():
301301
return nil
302302
default:
303303
}
304304

305-
session, err := c.Client().Session(ctx, item.GetID())
305+
session, err := c.Client().Session(jobCtx, item.GetID())
306306
if err != nil {
307307
return fmt.Errorf("querying session %d from blockchain: %w", item.GetID(), err)
308308
}
@@ -338,7 +338,7 @@ func NewSessionValidateWorker(c *core.Context, interval time.Duration) cron.Work
338338
// Remove the associated peer if validation fails.
339339
if removePeer {
340340
log.Debug("Removing peer from service", "id", item.GetID(), "peer_id", item.GetPeerID())
341-
if err := c.RemovePeerIfExists(ctx, item.GetPeerID()); err != nil {
341+
if err := c.RemovePeerIfExists(jobCtx, item.GetPeerID()); err != nil {
342342
return fmt.Errorf("removing peer %q for session %d from service: %w", item.GetPeerID(), item.GetID(), err)
343343
}
344344
}
@@ -370,7 +370,7 @@ func NewSessionValidateWorker(c *core.Context, interval time.Duration) cron.Work
370370
}
371371

372372
// Wait until all routines complete.
373-
if err := eg.Wait(); err != nil {
373+
if err := jobGroup.Wait(); err != nil {
374374
return err
375375
}
376376

0 commit comments

Comments
 (0)