From a2af715e60889844e22000af0fef72de2d2f7a86 Mon Sep 17 00:00:00 2001 From: AlexStocks <alexstocks@foxmail.com> Date: Sat, 31 Aug 2019 23:43:10 +0800 Subject: [PATCH] Fix: gettyRPCClientPool.remove deadlock --- protocol/dubbo/pool.go | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/protocol/dubbo/pool.go b/protocol/dubbo/pool.go index 546a5b335..a8bb6522b 100644 --- a/protocol/dubbo/pool.go +++ b/protocol/dubbo/pool.go @@ -275,6 +275,7 @@ func (p *gettyRPCClientPool) close() { func (p *gettyRPCClientPool) getGettyRpcClient(protocol, addr string) (*gettyRPCClient, error) { p.Lock() + defer p.Unlock() if p.conns == nil { return nil, errClientPoolClosed } @@ -291,11 +292,9 @@ func (p *gettyRPCClientPool) getGettyRpcClient(protocol, addr string) (*gettyRPC } conn.created = now //update created time - p.Unlock() return conn, nil } // create new conn - p.Unlock() return newGettyRPCClientConn(p, protocol, addr) } -- GitLab