pull/458/head
wangchuxiao 2 years ago
parent 05a8e99957
commit db839444f2

@ -23,7 +23,6 @@ func RpcClientInterceptor(ctx context.Context, method string, req, resp interfac
if ctx == nil { if ctx == nil {
return errs.ErrInternalServer.Wrap("call rpc request context is nil") return errs.ErrInternalServer.Wrap("call rpc request context is nil")
} }
log.ZInfo(ctx, "rpc client req", "funcName", method, "req", rpcString(req), "invoker", invoker, "invoker_type", fmt.Sprintf("%T", invoker))
ctx, err = getRpcContext(ctx, method) ctx, err = getRpcContext(ctx, method)
if err != nil { if err != nil {
return err return err

@ -3,9 +3,10 @@ package zookeeper
import ( import (
"context" "context"
"fmt" "fmt"
"strings"
"github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log"
"google.golang.org/grpc" "google.golang.org/grpc"
"strings"
) )
func newClientConnInterface(cc grpc.ClientConnInterface) grpc.ClientConnInterface { func newClientConnInterface(cc grpc.ClientConnInterface) grpc.ClientConnInterface {

@ -44,10 +44,6 @@ func (s *ZkClient) watch() {
func (s *ZkClient) GetConnsRemote(serviceName string) (conns []resolver.Address, err error) { func (s *ZkClient) GetConnsRemote(serviceName string) (conns []resolver.Address, err error) {
path := s.getPath(serviceName) path := s.getPath(serviceName)
_, _, _, err = s.conn.ChildrenW(path)
if err != nil {
return nil, errors.Wrap(err, "children watch error")
}
childNodes, _, err := s.conn.Children(path) childNodes, _, err := s.conn.Children(path)
if err != nil { if err != nil {
return nil, errors.Wrap(err, "get children error") return nil, errors.Wrap(err, "get children error")
@ -64,8 +60,9 @@ func (s *ZkClient) GetConnsRemote(serviceName string) (conns []resolver.Address,
log.ZDebug(context.Background(), "get conns from remote", "conn", string(data)) log.ZDebug(context.Background(), "get conns from remote", "conn", string(data))
conns = append(conns, resolver.Address{Addr: string(data), ServerName: serviceName}) conns = append(conns, resolver.Address{Addr: string(data), ServerName: serviceName})
} }
if len(conns) == 0 { _, _, _, err = s.conn.ChildrenW(path)
return nil, fmt.Errorf("no conn for service %s, grpc server may not exist, local conn is %v, please check zookeeper server %v, path: %s", serviceName, s.localConns, s.zkServers, s.zkRoot) if err != nil {
return nil, errors.Wrap(err, "children watch error")
} }
return conns, nil return conns, nil
} }
@ -83,6 +80,9 @@ func (s *ZkClient) GetConns(ctx context.Context, serviceName string, opts ...grp
s.lock.Unlock() s.lock.Unlock()
return nil, err return nil, err
} }
if len(conns) == 0 {
return nil, fmt.Errorf("no conn for service %s, grpc server may not exist, local conn is %v, please check zookeeper server %v, path: %s", serviceName, s.localConns, s.zkServers, s.zkRoot)
}
s.localConns[serviceName] = conns s.localConns[serviceName] = conns
} }
s.lock.Unlock() s.lock.Unlock()

@ -22,7 +22,6 @@ func (r *Resolver) ResolveNow(o resolver.ResolveNowOptions) {
newConns, err := r.getConnsRemote(strings.TrimLeft(r.target.URL.Path, "/")) newConns, err := r.getConnsRemote(strings.TrimLeft(r.target.URL.Path, "/"))
if err != nil { if err != nil {
log.ZError(context.Background(), "resolve now error", err, "target", r.target) log.ZError(context.Background(), "resolve now error", err, "target", r.target)
// r.ResolveNow(o)
return return
} }
r.addrs = newConns r.addrs = newConns

Loading…
Cancel
Save