NACK (jetstream-controller) failed to update consumer

10/1/2021

I tried to update consumer configuration (ackWait option) and ended up with following message in logs:

Event(v1.ObjectReference{Kind:"Consumer", Namespace:"ns1", Name:"cons1", UID:"cb9f7ad4-35a2-478b-b685-51bbf143dcd7", APIVersion:"jetstream.nats.io/v1beta1", ResourceVersion:"89879874", FieldPath:""}): type: 'Warning' reason: 'Updating' Consumer updates ("cons1" on "stream1") are not allowed, recreate to update

I am not sure how to read it. Is it a matter of my configuration (and how can I check and adjust it) or maybe updating configuration is not allowed at all by design (and NACK can be used only to create new streams/consumers and not for updating them)?

Here is my yaml file with stream and consumer:

---
apiVersion: jetstream.nats.io/v1beta1
kind: Stream
metadata:
  name: stream1
spec:
  name: stream1
  subjects: ["EVENTS.>"]
  storage: file
  retention: interest
---
apiVersion: jetstream.nats.io/v1beta1
kind: Consumer
metadata:
  name: cons1
spec:
  streamName: stream1
  durableName: cons1
  deliverPolicy: new
  filterSubject: EVENTS.>
  maxDeliver: 20
  ackPolicy: explicit
  ackWait: 5s
-- Codringher
jetstream
kubernetes
nats.io

0 Answers