diff options
| author | chrislu <chris.lu@gmail.com> | 2024-03-31 17:45:26 -0700 |
|---|---|---|
| committer | chrislu <chris.lu@gmail.com> | 2024-03-31 17:45:26 -0700 |
| commit | 237e68059d836d6abf199097997f3315722e992d (patch) | |
| tree | b2ac82870128687534317263329d350abe116271 /weed/mq/topic/local_partition.go | |
| parent | 66a878af39eb14a5501164143e37bd7c8b8cdc41 (diff) | |
| download | seaweedfs-237e68059d836d6abf199097997f3315722e992d.tar.xz seaweedfs-237e68059d836d6abf199097997f3315722e992d.zip | |
shutdown follower if no clients, not only publishers
to avoid overhead when a publisher repeatedly send one message and close
Diffstat (limited to 'weed/mq/topic/local_partition.go')
| -rw-r--r-- | weed/mq/topic/local_partition.go | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/weed/mq/topic/local_partition.go b/weed/mq/topic/local_partition.go index 0873d6bd7..40ab3cee6 100644 --- a/weed/mq/topic/local_partition.go +++ b/weed/mq/topic/local_partition.go @@ -190,7 +190,7 @@ func (p *LocalPartition) MaybeConnectToFollowers(initMessage *mq_pb.PublishMessa func (p *LocalPartition) MaybeShutdownLocalPartition() (hasShutdown bool) { - if p.Publishers.Size() == 0 { + if p.Publishers.Size() == 0 && p.Subscribers.Size() == 0 { if p.followerStream != nil { // send close to the follower if followErr := p.followerStream.Send(&mq_pb.PublishFollowMeRequest{ @@ -205,9 +205,7 @@ func (p *LocalPartition) MaybeShutdownLocalPartition() (hasShutdown bool) { p.followerStream = nil p.follower = "" } - } - if p.Publishers.Size() == 0 && p.Subscribers.Size() == 0 { p.LogBuffer.ShutdownLogBuffer() hasShutdown = true } |
