File tree Expand file tree Collapse file tree 1 file changed +1
-3
lines changed Expand file tree Collapse file tree 1 file changed +1
-3
lines changed Original file line number Diff line number Diff line change @@ -325,25 +325,23 @@ func (p *ConnPool) waitTurn(ctx context.Context) error {
325
325
326
326
start := time .Now ()
327
327
timer := timers .Get ().(* time.Timer )
328
+ defer timers .Put (timer )
328
329
timer .Reset (p .cfg .PoolTimeout )
329
330
330
331
select {
331
332
case <- ctx .Done ():
332
333
if ! timer .Stop () {
333
334
<- timer .C
334
335
}
335
- timers .Put (timer )
336
336
return ctx .Err ()
337
337
case p .queue <- struct {}{}:
338
338
p .waitDurationNs .Add (time .Since (start ).Nanoseconds ())
339
339
atomic .AddUint32 (& p .stats .WaitCount , 1 )
340
340
if ! timer .Stop () {
341
341
<- timer .C
342
342
}
343
- timers .Put (timer )
344
343
return nil
345
344
case <- timer .C :
346
- timers .Put (timer )
347
345
atomic .AddUint32 (& p .stats .Timeouts , 1 )
348
346
return ErrPoolTimeout
349
347
}
You can’t perform that action at this time.
0 commit comments