alertmanager/provider
Max Inden d4788ed195 provider/mem: Add Put Subscribe starvation test (#1503)
TestAlertsSubscribePutStarvation tests starvation of `iterator.Close` and
`alerts.Put`. Both `Subscribe` and `Put` use the Alerts.mtx lock. `Subscribe`
needs it to subscribe and more importantly unsubscribe `Alerts.listeners`.
`Put` uses the lock to add additional alerts and iterate the `Alerts.listeners`
map.  If the channel of a listener is at its limit, `alerts.Lock` is blocked,
whereby a listener can not unsubscribe as the lock is hold by `alerts.Lock`.

Signed-off-by: Max Leonard Inden <IndenML@gmail.com>
2018-08-06 16:00:17 +02:00
..
mem provider/mem: Add Put Subscribe starvation test (#1503) 2018-08-06 16:00:17 +02:00
provider.go provider: delete old silence provider 2016-08-30 12:01:24 +02:00