From c7805de730a13707f3b16538fa5e2b7a640da415 Mon Sep 17 00:00:00 2001 From: or-else Date: Sat, 22 Sep 2018 11:23:45 +0300 Subject: [PATCH] change the order of grpc shutdown --- server/cluster.go | 2 +- server/hdl_grpc.go | 2 +- server/hdl_longpoll.go | 2 +- server/hdl_websock.go | 2 +- server/http.go | 6 +++--- server/sessionstore.go | 2 +- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/server/cluster.go b/server/cluster.go index 6170a098c..18bf38807 100644 --- a/server/cluster.go +++ b/server/cluster.go @@ -297,7 +297,7 @@ func (c *Cluster) Master(msg *ClusterReq, rejected *bool) error { return nil } - sess, _ = globals.sessionStore.Create(node, msg.Sess.Sid) + sess, _ = globals.sessionStore.NewSession(node, msg.Sess.Sid) go sess.rpcWriteLoop() } diff --git a/server/hdl_grpc.go b/server/hdl_grpc.go index cf2d27839..ab6c022c7 100644 --- a/server/hdl_grpc.go +++ b/server/hdl_grpc.go @@ -31,7 +31,7 @@ func (sess *Session) closeGrpc() { // Equivalent of starting a new session and a read loop in one func (*grpcNodeServer) MessageLoop(stream pbx.Node_MessageLoopServer) error { - sess, _ := globals.sessionStore.Create(stream, "") + sess, _ := globals.sessionStore.NewSession(stream, "") defer func() { sess.closeGrpc() diff --git a/server/hdl_longpoll.go b/server/hdl_longpoll.go index c68a7116b..665db4d47 100644 --- a/server/hdl_longpoll.go +++ b/server/hdl_longpoll.go @@ -115,7 +115,7 @@ func serveLongPoll(wrt http.ResponseWriter, req *http.Request) { if sid == "" { // New session var count int - sess, count = globals.sessionStore.Create(wrt, "") + sess, count = globals.sessionStore.NewSession(wrt, "") log.Println("lp: session started", sess.sid, count) wrt.WriteHeader(http.StatusCreated) pkt := NoErrCreated(req.FormValue("id"), "", now) diff --git a/server/hdl_websock.go b/server/hdl_websock.go index fc3d8b5a5..0e768e689 100644 --- a/server/hdl_websock.go +++ b/server/hdl_websock.go @@ -157,7 +157,7 @@ func serveWebSocket(wrt http.ResponseWriter, req *http.Request) { return } - sess, count := globals.sessionStore.Create(ws, "") + sess, count := globals.sessionStore.NewSession(ws, "") log.Println("ws: session started", sess.sid, count) diff --git a/server/http.go b/server/http.go index 57dacb6be..cc19b266b 100644 --- a/server/http.go +++ b/server/http.go @@ -152,14 +152,14 @@ loop: // Shutdown local cluster node, if it's a part of a cluster. globals.cluster.shutdown() + // Terminate plugin connections + pluginsShutdown() + // Shutdown gRPC server, if one is configured if globals.grpcServer != nil { globals.grpcServer.GracefulStop() } - // Terminate plugin connections - pluginsShutdown() - // Shutdown the hub. The hub will shutdown topics hubdone := make(chan bool) globals.hub.shutdown <- hubdone diff --git a/server/sessionstore.go b/server/sessionstore.go index ccc9ecc0a..8847ee391 100644 --- a/server/sessionstore.go +++ b/server/sessionstore.go @@ -35,7 +35,7 @@ type SessionStore struct { } // Create creates a new session and adds it to store. -func (ss *SessionStore) Create(conn interface{}, sid string) (*Session, int) { +func (ss *SessionStore) NewSession(conn interface{}, sid string) (*Session, int) { var s Session s.sid = sid