From 8446b578c271448e2a23f4b2152f2d6311168e82 Mon Sep 17 00:00:00 2001 From: Nam Huynh Date: Sat, 26 Mar 2022 00:00:58 +0700 Subject: [PATCH] dont create consumer if existed --- jetstream_consumer.go | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/jetstream_consumer.go b/jetstream_consumer.go index da38249..b59df80 100644 --- a/jetstream_consumer.go +++ b/jetstream_consumer.go @@ -14,10 +14,17 @@ func (js JetStream) GetConsumerInfo(stream, name string) (*nats.ConsumerInfo, er // AddConsumer ... func (js JetStream) AddConsumer(stream, subject, name string) error { + // Get consumer first, return if existed + consumer, err := js.GetConsumerInfo(stream, name) + if consumer != nil { + return nil + } + + // Generate channel name channel := combineStreamAndSubjectName(stream, subject) // Add - _, err := js.instance.AddConsumer(stream, &nats.ConsumerConfig{ + _, err = js.instance.AddConsumer(stream, &nats.ConsumerConfig{ Durable: name, AckPolicy: nats.AckExplicitPolicy, FilterSubject: channel,