mirror of
https://github.com/gogrlx/nats-server.git
synced 2026-04-02 03:38:42 -07:00
Fixed interface conversion for ipQueue in monitor which caused panics.
Signed-off-by: Derek Collison <derek@nats.io>
This commit is contained in:
@@ -4981,3 +4981,22 @@ func TestHealthzStatusUnavailable(t *testing.T) {
|
||||
|
||||
checkHealthzEndpoint(t, s.MonitorAddr().String(), http.StatusServiceUnavailable, "unavailable")
|
||||
}
|
||||
|
||||
// When we converted ipq to use generics we still were using sync.Map. Currently you can not convert
|
||||
// interface{} or any to a generic parameterized type. So this stopped working and panics.
|
||||
func TestIpqzWithGenerics(t *testing.T) {
|
||||
opts := DefaultMonitorOptions()
|
||||
opts.JetStream = true
|
||||
|
||||
s := RunServer(opts)
|
||||
defer s.Shutdown()
|
||||
|
||||
url := fmt.Sprintf("http://%s/ipqueuesz?all=1", s.MonitorAddr().String())
|
||||
body := readBody(t, url)
|
||||
require_True(t, len(body) > 0)
|
||||
|
||||
queues := map[string]*monitorIPQueue{}
|
||||
require_NoError(t, json.Unmarshal(body, &queues))
|
||||
require_True(t, len(queues) >= 4)
|
||||
require_True(t, queues["SendQ"] != nil)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user