Skip to content

Cherry-picks for 2.11.5-RC.1#6985

Merged
neilalexander merged 29 commits intorelease/v2.11.5from
neil/2115rc1
Jun 17, 2025
Merged

Cherry-picks for 2.11.5-RC.1#6985
neilalexander merged 29 commits intorelease/v2.11.5from
neil/2115rc1

Conversation

@neilalexander
Copy link
Copy Markdown
Member

neilalexander and others added 29 commits June 17, 2025 10:32
Fixes #6920.

Signed-off-by: Neil Twigg <neil@nats.io>
…ster

If a request originates from cluster A and is routed to cluster B then
to a leafnode where a service is running, sending back the reply could
fail if the leafnode has restrictive publish permissions.

Resolves #6894

Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
Otherwise this can potentially result in a deadlock if interleaving with
certain other operations, i.e. stream purges, new consumer assignments.

Signed-off-by: Neil Twigg <neil@nats.io>
Signed-off-by: Waldemar Quevedo <wally@nats.io>
Signed-off-by: Neil Twigg <neil@nats.io>
Signed-off-by: Maurice van Veen <github@mauricevanveen.com>
Signed-off-by: Neil Twigg <neil@nats.io>
Signed-off-by: Neil Twigg <neil@nats.io>
Signed-off-by: Maurice van Veen <github@mauricevanveen.com>
Signed-off-by: Maurice van Veen <github@mauricevanveen.com>
Signed-off-by: Derek Collison <derek@nats.io>
Signed-off-by: Maurice van Veen <github@mauricevanveen.com>
Signed-off-by: Maurice van Veen <github@mauricevanveen.com>
Signed-off-by: Maurice van Veen <github@mauricevanveen.com>
Signed-off-by: Neil Twigg <neil@nats.io>
Fixes #6930.

Signed-off-by: Neil Twigg <neil@nats.io>
Signed-off-by: Neil Twigg <neil@nats.io>
Signed-off-by: Neil Twigg <neil@nats.io>
Signed-off-by: Piotr Piotrowski <piotr@synadia.com>
…quest timeout

Signed-off-by: Maurice van Veen <github@mauricevanveen.com>
Signed-off-by: Maurice van Veen <github@mauricevanveen.com>
Signed-off-by: Maurice van Veen <github@mauricevanveen.com>
Signed-off-by: Neil Twigg <neil@nats.io>
Signed-off-by: Maurice van Veen <github@mauricevanveen.com>
Signed-off-by: Maurice van Veen <github@mauricevanveen.com>
…an extended downtime across a leafnode.

When a consumer for a source or a mirror is failing to be created, we backoff creation attempts.
If the failures were due to a downed leafnode, meaning the mirror or source is across a leafnode connection, the resync could take more time then desired after the leafnode reconnects.

This improves resync time by hooking into the leafnode's reconnect logic (either via connect or async info).
Once we detect the reconnect, we search for streams that are leaders, and are a mirror or sourcing from another stream, and do not have an active sync consumer.
If we detect this we will reset the consumer backoff and retry with just a small jitter backoff.

Signed-off-by: Derek Collison <derek@nats.io>
Signed-off-by: Maurice van Veen <github@mauricevanveen.com>
Signed-off-by: Maurice van Veen <github@mauricevanveen.com>
@neilalexander neilalexander requested a review from a team as a code owner June 17, 2025 09:41
Copy link
Copy Markdown
Member

@MauriceVanVeen MauriceVanVeen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@neilalexander neilalexander merged commit cd8f3f8 into release/v2.11.5 Jun 17, 2025
48 checks passed
@neilalexander neilalexander deleted the neil/2115rc1 branch June 17, 2025 11:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants