Preserve consumer after unsubscribe

This commit is contained in:
Neil Alexander 2022-03-22 12:14:00 +00:00
parent 555752482c
commit a0116959c3
No known key found for this signature in database
GPG key ID: A02A2019A2BB0944

View file

@ -76,14 +76,14 @@ func (r *Inputer) workerForRoom(roomID string) *worker {
})
w := v.(*worker)
if !loaded {
consumer := "DendriteRoomInputConsumerPull" + jetstream.Tokenise(w.roomID)
sub, err := w.r.JetStream.PullSubscribe(
jetstream.InputRoomEventSubj(w.roomID),
"DendriteRoomInputConsumerPull"+jetstream.Tokenise(w.roomID),
jetstream.InputRoomEventSubj(w.roomID), consumer,
nats.ManualAck(),
nats.DeliverAll(),
nats.MaxAckPending(-1),
nats.AckWait(MaximumMissingProcessingTime+(time.Second*10)),
nats.BindStream(r.InputRoomEventTopic),
nats.Bind(r.InputRoomEventTopic, consumer),
)
if err != nil {
logrus.WithError(err).Errorf("Failed to subscribe to stream for room %q", w.roomID)