This is an automated email from the ASF dual-hosted git repository.

dinglei pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/rocketmq-client-go.git


The following commit(s) were added to refs/heads/master by this push:
     new 43edd17   [ISSUE #884]fix goroutine leak (#885)
43edd17 is described below

commit 43edd175a6df2e9d71d04450bc80247db37cbb7e
Author: Nick <[email protected]>
AuthorDate: Sat Aug 6 09:02:18 2022 +0800

     [ISSUE #884]fix goroutine leak (#885)
    
    * [ISSUE #884]fix goroutine leak
    
    * mock UnregisterConsumer
---
 consumer/push_consumer.go      | 2 +-
 consumer/push_consumer_test.go | 4 +++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/consumer/push_consumer.go b/consumer/push_consumer.go
index d723519..a5884d8 100644
--- a/consumer/push_consumer.go
+++ b/consumer/push_consumer.go
@@ -225,7 +225,7 @@ func (pc *pushConsumer) Start() error {
        for k := range pc.subscribedTopic {
                _, exist := pc.topicSubscribeInfoTable.Load(k)
                if !exist {
-                       pc.client.Shutdown()
+                       pc.Shutdown()
                        return fmt.Errorf("the topic=%s route info not found, 
it may not exist", k)
                }
        }
diff --git a/consumer/push_consumer_test.go b/consumer/push_consumer_test.go
index 78bc1f7..70779e5 100644
--- a/consumer/push_consumer_test.go
+++ b/consumer/push_consumer_test.go
@@ -19,9 +19,10 @@ package consumer
 
 import (
        "context"
-       "github.com/apache/rocketmq-client-go/v2/rlog"
        "testing"
 
+       "github.com/apache/rocketmq-client-go/v2/rlog"
+
        "github.com/apache/rocketmq-client-go/v2/internal"
        "github.com/apache/rocketmq-client-go/v2/primitive"
        "github.com/golang/mock/gomock"
@@ -80,6 +81,7 @@ func TestStart(t *testing.T) {
 
                Convey("test topic route info not found", func() {
                        client.EXPECT().Shutdown().Return()
+                       
client.EXPECT().UnregisterConsumer(gomock.Any()).Return()
                        err = c.Start()
                        So(err.Error(), ShouldContainSubstring, "route info not 
found")
                })

Reply via email to