Ack tweaks

This commit is contained in:
Neil Alexander 2021-11-03 15:57:36 +00:00
parent eb07c2d5d7
commit 134ec18614
No known key found for this signature in database
GPG key ID: A02A2019A2BB0944
9 changed files with 28 additions and 28 deletions

View file

@ -60,18 +60,18 @@ func (r *Inputer) Start() error {
defer roomserverInputBackpressure.With(prometheus.Labels{"room_id": roomID}).Dec()
var inputRoomEvent api.InputRoomEvent
if err := json.Unmarshal(msg.Data, &inputRoomEvent); err != nil {
_ = msg.Nak()
_ = msg.Ack()
return
}
inbox, _ := r.workers.LoadOrStore(roomID, &phony.Inbox{})
inbox.(*phony.Inbox).Act(nil, func() {
if _, err := r.processRoomEvent(context.TODO(), &inputRoomEvent); err != nil {
sentry.CaptureException(err)
_ = msg.Nak()
} else {
hooks.Run(hooks.KindNewEventPersisted, inputRoomEvent.Event)
_ = msg.Ack()
}
_ = msg.Ack()
})
},
nats.ManualAck(),