From 60e45ea3ddbe026e2dedcdcb7c26183d09929042 Mon Sep 17 00:00:00 2001 From: Derek Collison Date: Wed, 1 Sep 2021 14:01:00 -0700 Subject: [PATCH] Return if pull subscriber and exists Signed-off-by: Derek Collison --- server/jetstream_cluster.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/server/jetstream_cluster.go b/server/jetstream_cluster.go index b2293d40..d1bce993 100644 --- a/server/jetstream_cluster.go +++ b/server/jetstream_cluster.go @@ -4070,8 +4070,9 @@ func (s *Server) jsClusteredConsumerRequest(ci *ClientInfo, acc *Account, subjec } else { oname = cfg.Durable if ca := sa.consumers[oname]; ca != nil && !ca.deleted { + isPull := ca.Config.DeliverSubject == _EMPTY_ // This can be ok if delivery subject update. - shouldErr := !reflect.DeepEqual(cfg, ca.Config) && !configsEqualSansDelivery(*cfg, *ca.Config) || ca.pending + shouldErr := isPull || ca.pending || (!reflect.DeepEqual(cfg, ca.Config) && !configsEqualSansDelivery(*cfg, *ca.Config)) if !shouldErr { rr := acc.sl.Match(ca.Config.DeliverSubject) shouldErr = len(rr.psubs)+len(rr.qsubs) != 0