Maurice van Veen
132567de39
Fix PurgeEx replay with sequence & keep succeeds
2023-06-04 11:56:28 +02:00
Derek Collison
e1f8064e9e
[FIXED] Make sure to process extended purge operations correctly when being replayed. ( #4212 )
...
This is an extension to the excellent work by @MauriceVanVeen and his
original PR #4197 to fully resolve for all use cases.
Signed-off-by: Derek Collison <derek@nats.io >
Resolves #4196
2023-06-03 18:12:22 -07:00
Derek Collison
dee532495d
Make sure to process extended purge operations correctly when being replayed on a restart.
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-06-03 17:49:45 -07:00
Derek Collison
eb09ddd73a
[FIXED] Killed server on restart could render encrypted stream unrecoverable ( #4210 )
...
When a server was killed on restart before an encrypted stream was
recovered the keyfile was removed and could cause the stream to not be
recoverable.
We only needed to delete the key file when converting ciphers and right
before we add the stream itself.
Signed-off-by: Derek Collison <derek@nats.io >
Resolves #4195
2023-06-03 17:36:10 -07:00
Derek Collison
238282d974
Fix some data races detected in internal testing
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-06-03 13:58:15 -07:00
Derek Collison
4c1b93d023
Make sure to put the keyfile back if we did not recover the stream.
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-06-03 11:21:58 -07:00
Derek Collison
d5ae96f54d
When a server was killed on restart before an encrypted stream was recovered the keyfile was removed and could cause the stream to not be recoverable.
...
We only needed to delete the key file when converting ciphers and right before we add the stream itself.
Signed-off-by: Derek Collison <derek@nats.io >
2023-06-03 11:21:47 -07:00
Derek Collison
22c97d67ff
[FIXED] Daisy chained leafnodes sometimes would not propagate interest ( #4207 )
...
When we were optimizing for single cluster and large numbers of
leafnodes we inadvertently broke a daisy chained scenario where a server
was a spoke and a hub within a single hub server.
So interest on D would not propagate properly to server A as a
publisher.
```
B
/ \
A C -- D (SUB)
|
PUB
```
2023-06-02 16:43:21 -07:00
Derek Collison
b2ac621212
Bump to 2.9.18-beta ( #4182 )
2023-06-02 16:40:23 -07:00
Derek Collison
1bce79750e
When we were optimizing for single cluster but large number of leafnodes we inadvertently broke a daisy chained scenarion where a server was a spoke and a hub with a single hub cluster.
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-06-02 15:16:36 -07:00
Derek Collison
27bbfb7a85
Only check ack floor if we are interest policy based.
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-06-02 11:04:00 -07:00
Artem Seleznev
27a8b96ee3
different panic fixes
...
Signed-off-by: Artem Seleznev <seleznyov.artyom@gmail.com >
2023-06-02 13:19:22 +03:00
Byron Ruth
b24f0f393a
Bump to 2.9.18-beta
...
Signed-off-by: Byron Ruth <byron@nats.io >
2023-05-18 14:22:22 -04:00
Byron Ruth
f3dac91d2a
Prepare v2.9.17 release
...
Include fix with GoReleaser for nightly.
Signed-off-by: Byron Ruth <byron@nats.io >
2023-05-18 13:57:40 -04:00
Derek Collison
7e3f3f4908
Make health checks more consistent with stream health checks.
...
Check for closed state on leader change for consumers.
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-18 08:18:53 -07:00
Derek Collison
8e825001d2
When we receive a catchup request for an item beyond our current state, we should stepdown.
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-17 17:30:35 -07:00
Derek Collison
7dfe5e528e
Bump to 2.9.17-RC.3
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-17 16:46:10 -07:00
Derek Collison
94457e2d55
[IMPROVED] Reset logic for streams ( #4177 )
...
When we detect conditions to reset streams, make sure we properly clean
up old NRG nodes etc.
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-17 16:45:00 -07:00
Derek Collison
a8d7d3886e
Make sure to delete the stream assignment node here
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-17 16:19:39 -07:00
Derek Collison
44a5875968
Avoimd deadlock with usage lock for an account during checkAndSyncUsage().
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-17 16:05:46 -07:00
Derek Collison
f3553791b1
Updates to stream reset logic.
...
1. When catching up do not try forever and if needed reset cluster state.
2. In checking if a stream is healthy check for node drift.
3. When restarting a stream make sure the current node is stopped.
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-17 13:14:33 -07:00
Derek Collison
5db57fb053
Bump to 2.9.17-RC.2
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-16 14:02:29 -07:00
Derek Collison
a06e1c9b43
Make sure to also stop nodes when dealing with consumer after stream restart
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-16 13:16:47 -07:00
Derek Collison
3752a6c500
Make sure to stop the node on a consumer restart if still running
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-16 12:49:46 -07:00
Derek Collison
734895ae47
Fix test flapper
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-16 12:20:18 -07:00
Derek Collison
b0340ce598
Make sure to wait properly until we believe we are caught up to enable direct gets.
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-16 11:02:06 -07:00
Savion
cd192f0e03
CHANGED - typo err
2023-05-16 16:41:52 +08:00
Derek Collison
bca7b4ea44
Bump to 2.9.17-RC.1
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-15 15:45:48 -07:00
Derek Collison
9434110c05
[FIXED] Additional fix for #3734 . ( #4166 )
...
When the first block was truncated and missing any index info we would
not properly rebuild the state.
Signed-off-by: Derek Collison <derek@nats.io >
Resolves #3734
2023-05-15 15:40:12 -07:00
Waldemar Quevedo
ee38f8bbc5
monitor: change account detail info back to utc when served ( #4163 )
...
Signed-off-by: Waldemar Quevedo <wally@nats.io >
2023-05-15 15:33:57 -07:00
Derek Collison
3602ff5146
Additional fix for #3734 .
...
When the first block was truncated and missing any index info we would not properly rebuild the state.
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-15 15:30:55 -07:00
Derek Collison
832df1cdba
Protect against out of bounds access on usage updates.
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-15 14:38:26 -07:00
Derek Collison
fe71ef524c
[FIXED] Service imports reporting for Accountz() when mapping to local subjects. ( #4158 )
...
Signed-off-by: Derek Collison <derek@nats.io >
Resolves #4144
2023-05-15 14:04:57 -07:00
Derek Collison
ea75beaeb1
[FIXED] Track all remote servers in a NATS system with different domains. ( #4159 )
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-15 13:47:06 -07:00
Waldemar Quevedo
3c4ed549a5
resolver: improve signaling for missing account lookups ( #4151 )
...
When using the nats account resolver and a JWT is not found, the client could
often get an i/o timeout error due to not receiving a timely response
before the account resolver fetch request times out. Now instead
of waiting for the fetch request to timeout, a resolver without JWTs
will notify as well that it could not find a matching JWT, waiting for a
response from all active servers.
Also included in this PR is some cleanup to the logs emitted by the
resolver.
Signed-off-by: Waldemar Quevedo <wally@nats.io >
2023-05-14 11:10:25 -07:00
Derek Collison
75d274a636
If a NATS system has multiple domains make sure to process those during a remote update before bailing.
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-13 18:36:42 -07:00
Derek Collison
d293af1da6
Fix to service imports reporting for Accountz() when import subject is mapped into different local subject.
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-13 12:57:05 -07:00
Derek Collison
421775a32a
Fix to allow sorting by rtt for connz.
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-12 20:22:07 -07:00
Derek Collison
7f17e07d66
Filter by user at the end for closed connections
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-12 15:24:42 -07:00
Derek Collison
0c13f174c0
Fixed cap mistake in comment
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-12 15:07:00 -07:00
Derek Collison
c5eb46cb06
Make sure closed clients captures all user types and works with user filtering as well
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-12 15:05:40 -07:00
Derek Collison
90d1063674
Fix for #4149 to allow proper user filtering on connz for other user types.
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-12 14:19:37 -07:00
Waldemar Quevedo
286a1632ca
Use monotonic time for measuring time internally
...
Signed-off-by: Waldemar Quevedo <wally@nats.io >
2023-05-12 08:27:46 -07:00
Derek Collison
5e029d08d5
For older R1 streams created by previous servers we could have no cluster for the stream assignment group which would prevent scale up with newer servers.
...
This will inherit cluster if detected from placement tags or client cluster designation.
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-10 17:59:28 -07:00
Derek Collison
2f2498ab7e
Bump to 2.9.17-beta.7
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-10 15:32:45 -07:00
Derek Collison
a17357c6ae
When doing leadership transfer stepdown as soon as we know we have sent the EntryLeaderTransfer entry.
...
Delaying could allow something to be sent from the old leader which would cause the new leader to bail on being a candidate even though it would have gotten all the votes.
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-10 12:27:33 -07:00
Derek Collison
717afae9ef
When doing a leader transfer clear vote state on leader and when non-chosen peers receive the update
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-10 07:49:22 -07:00
Derek Collison
c5c5a34fec
Bump to 2.9.17-beta.6
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-09 20:12:22 -07:00
Derek Collison
b9af0d0294
Only do no-leader stepdown on transfer after a delay if we are still the leader
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-09 17:19:14 -07:00
Derek Collison
b44beb4b54
Make sure to update peer set and remove old peers after new leader takes over
...
Signed-off-by: Derek Collison <derek@nats.io >
2023-05-09 15:15:02 -07:00