0
Fork 0
mirror of https://codeberg.org/forgejo/forgejo.git synced 2024-12-25 17:04:12 -05:00
forgejo/modules/queue
zeripath c58bc4bf80
Prevent timer leaks in Workerpool and others (#11333)
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>
2020-05-08 16:46:05 +01:00
..
bytefifo.go Add Unique Queue infrastructure and move TestPullRequests to this (#9856) 2020-02-02 23:19:58 +00:00
helper.go Queue: Make WorkerPools and Queues flushable (#10001) 2020-01-28 20:01:06 -05:00
manager.go Fix broken FlushAll (#10101) 2020-02-01 23:43:50 +00:00
queue.go Add Unique Queue infrastructure and move TestPullRequests to this (#9856) 2020-02-02 23:19:58 +00:00
queue_bytefifo.go Add Unique Queue infrastructure and move TestPullRequests to this (#9856) 2020-02-02 23:19:58 +00:00
queue_channel.go Add Unique Queue infrastructure and move TestPullRequests to this (#9856) 2020-02-02 23:19:58 +00:00
queue_channel_test.go Fix Workerpool deadlock (#10283) 2020-02-15 18:44:58 +00:00
queue_disk.go Add Unique Queue infrastructure and move TestPullRequests to this (#9856) 2020-02-02 23:19:58 +00:00
queue_disk_channel.go Add Unique Queue infrastructure and move TestPullRequests to this (#9856) 2020-02-02 23:19:58 +00:00
queue_disk_channel_test.go Graceful Queues: Issue Indexing and Tasks (#9363) 2020-01-07 12:23:09 +01:00
queue_disk_test.go Add Unique Queue infrastructure and move TestPullRequests to this (#9856) 2020-02-02 23:19:58 +00:00
queue_redis.go Fix queue pop error and stat empty repository error (#10248) 2020-02-12 18:12:27 +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) 2020-05-08 16:46:05 +01:00
setting.go Add Unique Queue infrastructure and move TestPullRequests to this (#9856) 2020-02-02 23:19:58 +00:00
unique_queue.go Add Unique Queue infrastructure and move TestPullRequests to this (#9856) 2020-02-02 23:19:58 +00:00
unique_queue_channel.go Add Unique Queue infrastructure and move TestPullRequests to this (#9856) 2020-02-02 23:19:58 +00:00
unique_queue_disk.go Add Unique Queue infrastructure and move TestPullRequests to this (#9856) 2020-02-02 23:19:58 +00:00
unique_queue_disk_channel.go Add Unique Queue infrastructure and move TestPullRequests to this (#9856) 2020-02-02 23:19:58 +00:00
unique_queue_redis.go Fix queue pop error and stat empty repository error (#10248) 2020-02-12 18:12:27 +08:00
unique_queue_wrapped.go Add Unique Queue infrastructure and move TestPullRequests to this (#9856) 2020-02-02 23:19:58 +00:00
workerpool.go Prevent timer leaks in Workerpool and others (#11333) 2020-05-08 16:46:05 +01:00