From 6e413698056462359e5bdf772e9c61a7fc7ee289 Mon Sep 17 00:00:00 2001 From: Jonathan Moody <103143855+moodyjon@users.noreply.github.com> Date: Thu, 20 Oct 2022 14:44:57 -0400 Subject: [PATCH] Move session manager start/stop to a better place. --- server/jsonrpc_service.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/server/jsonrpc_service.go b/server/jsonrpc_service.go index af032cc..4e1f610 100644 --- a/server/jsonrpc_service.go +++ b/server/jsonrpc_service.go @@ -52,9 +52,6 @@ func (cr *gorillaRpcCodecRequest) Method() (string, error) { // StartJsonRPC starts the json rpc server and registers the endpoints. func (s *Server) StartJsonRPC() error { - s.sessionManager.start() - defer s.sessionManager.stop() - // Set up the pure JSONRPC server with persistent connections/sessions. if s.Args.JSONRPCPort != 0 { port := ":" + strconv.FormatUint(uint64(s.Args.JSONRPCPort), 10) @@ -69,7 +66,9 @@ func (s *Server) StartJsonRPC() error { goto fail1 } log.Infof("JSONRPC server listening on %s", listener.Addr().String()) + s.sessionManager.start() acceptConnections := func(listener net.Listener) { + defer s.sessionManager.stop() for { conn, err := listener.Accept() if err != nil { @@ -78,6 +77,7 @@ func (s *Server) StartJsonRPC() error { } log.Infof("Accepted: %v", conn.RemoteAddr()) s.sessionManager.addSession(conn) + } } go acceptConnections(netutil.LimitListener(listener, s.sessionManager.sessionsMax))