Open VeryStrongFingers opened 2 months ago
Yes this is a known issue we plan on improving in 2.11.
There is a similar issue with messages containing the 'Nats-Expected-Stream' header. They won’t be sent to the mirrored stream unless it is named the same as the source stream.
Observed behavior
Creating a Mirrored stream using a source that contains messages with
Nats-Expected-Last-Subject-Sequence
headers still performs sequence checks as per the source stream once performed.Expected behavior
Mirrored streams to ignore
Nats-Expected-Last-Subject-Sequence
headers (also possibly other 'Expect' headers?).Existence of the message in the source alone means the original assertion was valid. There is no need for a mirror to have the same expectations and checks as the original source stream.
Alternatively an option for mirrored streams to remove source headers would work too for a resolution. (https://github.com/nats-io/nats-server/pull/5409)
Server and client version
nats-cli: 0.1.5 nats-server: v2.10.20
Host environment
Tested in both Linux/amd64 & Darwin/arm64
Steps to reproduce
cool_stream_mirrored
stream will no longer mirror any new messages because of the invalidNats-Expected-Last-Subject-Sequence
headerRelevant code seems to be