From c0af5152f10a44a678e138b87492216659d076d3 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Thu, 29 Jun 2023 21:32:02 +0800 Subject: [PATCH 1/3] fix bug --- pkg/common/mw/gin.go | 1 + pkg/rpcclient/conversation.go | 5 ++--- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pkg/common/mw/gin.go b/pkg/common/mw/gin.go index 430edbbd9..fcdbe334e 100644 --- a/pkg/common/mw/gin.go +++ b/pkg/common/mw/gin.go @@ -157,6 +157,7 @@ func GinParseToken(rdb redis.UniversalClient) gin.HandlerFunc { } } else { apiresp.GinError(c, errs.ErrTokenNotExist.Wrap()) + c.Abort() return } c.Set(constant.OpUserPlatform, constant.PlatformIDToName(claims.PlatformID)) diff --git a/pkg/rpcclient/conversation.go b/pkg/rpcclient/conversation.go index 55ea5f829..400a7b651 100644 --- a/pkg/rpcclient/conversation.go +++ b/pkg/rpcclient/conversation.go @@ -7,13 +7,12 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" - "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation" pbConversation "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation" "google.golang.org/grpc" ) type Conversation struct { - Client conversation.ConversationClient + Client pbConversation.ConversationClient conn grpc.ClientConnInterface discov discoveryregistry.SvcDiscoveryRegistry } @@ -23,7 +22,7 @@ func NewConversation(discov discoveryregistry.SvcDiscoveryRegistry) *Conversatio if err != nil { panic(err) } - client := conversation.NewConversationClient(conn) + client := pbConversation.NewConversationClient(conn) return &Conversation{discov: discov, conn: conn, Client: client} } From 0eb185840840c0dc3c5eef03e01c61e22662e607 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Thu, 29 Jun 2023 22:54:24 +0800 Subject: [PATCH 2/3] conn --- pkg/common/mw/rpc_client_interceptor.go | 2 ++ pkg/discoveryregistry/zookeeper/resolver.go | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/pkg/common/mw/rpc_client_interceptor.go b/pkg/common/mw/rpc_client_interceptor.go index 498dfd9b8..2ac627e79 100644 --- a/pkg/common/mw/rpc_client_interceptor.go +++ b/pkg/common/mw/rpc_client_interceptor.go @@ -5,6 +5,7 @@ import ( "errors" "fmt" "strings" + "time" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" @@ -53,6 +54,7 @@ func RpcClientInterceptor(ctx context.Context, method string, req, resp interfac } func getRpcContext(ctx context.Context, method string) (context.Context, error) { + ctx, _ = context.WithTimeout(ctx, time.Second*5) md := metadata.Pairs() if keys, _ := ctx.Value(constant.RpcCustomHeader).([]string); len(keys) > 0 { for _, key := range keys { diff --git a/pkg/discoveryregistry/zookeeper/resolver.go b/pkg/discoveryregistry/zookeeper/resolver.go index ea1e13dfc..57e0f5db7 100644 --- a/pkg/discoveryregistry/zookeeper/resolver.go +++ b/pkg/discoveryregistry/zookeeper/resolver.go @@ -25,6 +25,10 @@ func (r *Resolver) ResolveNowZK(o resolver.ResolveNowOptions) { return } r.addrs = newConns + if len(newConns) == 0 { + log.ZError(context.Background(), "conn is nil", nil) + return + } if err := r.cc.UpdateState(resolver.State{Addresses: newConns}); err != nil { log.ZError(context.Background(), "UpdateState error, conns is nil from svr", err, "conns", newConns, "zk path", r.target.URL.Path) return From 60afea092b2e5daec4798c51847db05430a845ed Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Thu, 29 Jun 2023 23:15:10 +0800 Subject: [PATCH 3/3] ctx --- pkg/common/mw/rpc_client_interceptor.go | 3 +-- pkg/discoveryregistry/zookeeper/resolver.go | 4 ---- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/pkg/common/mw/rpc_client_interceptor.go b/pkg/common/mw/rpc_client_interceptor.go index 2ac627e79..e52366ec0 100644 --- a/pkg/common/mw/rpc_client_interceptor.go +++ b/pkg/common/mw/rpc_client_interceptor.go @@ -5,7 +5,6 @@ import ( "errors" "fmt" "strings" - "time" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" @@ -54,7 +53,7 @@ func RpcClientInterceptor(ctx context.Context, method string, req, resp interfac } func getRpcContext(ctx context.Context, method string) (context.Context, error) { - ctx, _ = context.WithTimeout(ctx, time.Second*5) + // ctx, _ = context.WithTimeout(ctx, time.Second*5) md := metadata.Pairs() if keys, _ := ctx.Value(constant.RpcCustomHeader).([]string); len(keys) > 0 { for _, key := range keys { diff --git a/pkg/discoveryregistry/zookeeper/resolver.go b/pkg/discoveryregistry/zookeeper/resolver.go index 57e0f5db7..ea1e13dfc 100644 --- a/pkg/discoveryregistry/zookeeper/resolver.go +++ b/pkg/discoveryregistry/zookeeper/resolver.go @@ -25,10 +25,6 @@ func (r *Resolver) ResolveNowZK(o resolver.ResolveNowOptions) { return } r.addrs = newConns - if len(newConns) == 0 { - log.ZError(context.Background(), "conn is nil", nil) - return - } if err := r.cc.UpdateState(resolver.State{Addresses: newConns}); err != nil { log.ZError(context.Background(), "UpdateState error, conns is nil from svr", err, "conns", newConns, "zk path", r.target.URL.Path) return