1
1
mirror of https://github.com/go-gitea/gitea synced 2024-11-05 17:54:26 +00:00
gitea/modules/queue
zeripath 86863ae939
Prevent timer leaks in Workerpool and others (#11333) (#11340)
There is a potential memory leak in `Workerpool` due to the intricacies of
`time.Timer` stopping.

Whenever a `time.Timer` is `Stop`ped its channel must be cleared using a
`select` if the result of the `Stop()` is `false`.

Unfortunately in `Workerpool` these were checked the wrong way round.

However, there were a few other places that were not being checked.

Signed-off-by: Andrew Thornton <art27@cantab.net>

Co-authored-by: techknowlogick <techknowlogick@gitea.io>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>

Co-authored-by: techknowlogick <techknowlogick@gitea.io>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2020-05-09 00:18:39 +08:00
..
manager.go Graceful Queues: Issue Indexing and Tasks (#9363) 2020-01-07 12:23:09 +01:00
queue_channel_test.go Fix Workerpool deadlock (#10283) (#10284) 2020-02-15 19:28:25 +00:00
queue_channel.go Graceful Queues: Issue Indexing and Tasks (#9363) 2020-01-07 12:23:09 +01:00
queue_disk_channel_test.go Graceful Queues: Issue Indexing and Tasks (#9363) 2020-01-07 12:23:09 +01:00
queue_disk_channel.go Remove unused lock (#9710) 2020-01-11 19:06:39 +00:00
queue_disk_test.go Graceful Queues: Issue Indexing and Tasks (#9363) 2020-01-07 12:23:09 +01:00
queue_disk.go Graceful Queues: Issue Indexing and Tasks (#9363) 2020-01-07 12:23:09 +01:00
queue_redis.go Update queue_redis.go (#9911) 2020-01-21 20:02:25 +08:00
queue_test.go Graceful Queues: Issue Indexing and Tasks (#9363) 2020-01-07 12:23:09 +01:00
queue_wrapped.go Prevent timer leaks in Workerpool and others (#11333) (#11340) 2020-05-09 00:18:39 +08:00
queue.go Graceful Queues: Issue Indexing and Tasks (#9363) 2020-01-07 12:23:09 +01:00
setting.go Graceful Queues: Issue Indexing and Tasks (#9363) 2020-01-07 12:23:09 +01:00
workerpool.go Prevent timer leaks in Workerpool and others (#11333) (#11340) 2020-05-09 00:18:39 +08:00