908 Commits

Author SHA1 Message Date
Jaime Piña
4216be6835 Remove mkpasswd from server
The functionality of mkpasswd has been added to nats-io/natscli.
2021-02-10 11:15:23 -08:00
Derek Collison
f93695a6d9 Fix test that was broken
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-08 16:57:20 -08:00
Derek Collison
c16f6e193d Move JetStream direct APIs to private.
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-07 15:19:22 -08:00
Ivan Kozlovic
d732c8fe82 Fixed bug that would prevent queue subs to ack messages
Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
2021-02-07 11:26:54 -07:00
Derek Collison
f209c60123 Send our own serverinfo when we receive an update from a new server
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-07 06:53:07 -08:00
Derek Collison
6ac7b238b0 Test fix for delay in lost quorum adv
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-07 05:52:10 -08:00
Derek Collison
38267d5110 Stability improvements
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-06 20:15:32 -08:00
Derek Collison
f500527d12 Make peer reassigment supercluster aware.
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-05 07:21:00 -08:00
Derek Collison
78f549b35b Make direct message retrieval from stream cluster aware
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-05 06:37:49 -08:00
Derek Collison
c49e3247bb Purge operations would be replayed on restart regardless if they had already been processed.
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-04 07:04:50 -08:00
Derek Collison
01ad02ccae Merge pull request #1883 from nats-io/supercluster
First pass at supercluster enablement.
2021-02-03 19:56:36 -07:00
Derek Collison
a1e0f7dc1a First pass at supercluster enablement.
This allows metacontrollers to span superclusters. Also includes placement directives for streams. By default they select the request origin cluster.

Signed-off-by: Derek Collison <derek@nats.io>
2021-02-03 17:28:13 -08:00
Derek Collison
dba22d9855 Test for restart after delete
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-03 16:49:38 -08:00
Derek Collison
1c9258f91c Handle msg delete and stream purge for R=1
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-03 16:30:03 -08:00
Derek Collison
a8982c040f Suppress lost quorum processing if to close to raft node creation time.
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-02 06:27:07 -08:00
Derek Collison
f3703a4b85 Make sure audit events have the proper subject regardless of where processed.
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-02 05:03:20 -08:00
Derek Collison
e5c1d65fff Added in JS disable per server on reload. Also removing peerw from a stream and leader stepdown for streams and consumers.
Various bug fixes, stability improvments.

Signed-off-by: Derek Collison <derek@nats.io>
2021-02-01 19:39:08 -08:00
Derek Collison
095a83bc2a Make sure to suppress duplicate create/delete audit events
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-31 09:16:16 -08:00
Derek Collison
9b20d5c888 Fixed bug on raft inline cacthup when apply channel was full.
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-30 13:22:27 -08:00
Derek Collison
5490c4969b Fixed a bug that on restore of single streams in clustered mode would subscribe to the stream subjects twice.
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-29 19:37:30 -08:00
Derek Collison
457ca3b9cf Suppress additional advisories on server restart and leadership changes.
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-29 15:08:22 -08:00
Derek Collison
3c49f087a0 Merge pull request #1859 from nats-io/jsc_ai
Extended AccountInfo to track API calls and errors.
2021-01-29 10:44:42 -07:00
Derek Collison
c889321a83 Change to API.Total and API.Errors
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-29 09:42:20 -08:00
Derek Collison
d2a92221fb Duplicate leader elect and lost advisories to the system account as well.
Also suppress lost quorums to at most once every 10 secs.

Signed-off-by: Derek Collison <derek@nats.io>
2021-01-29 08:51:20 -08:00
Derek Collison
0a3124e27d Track API calls per account. Track success and errors.
These tracking data are ephemeral per server. so on restart they reset.
That should be ok since these will most likely be used more for rates.

Signed-off-by: Derek Collison <derek@nats.io>
2021-01-28 17:16:50 -08:00
Derek Collison
9d4951d2bb Updated lost quorum signalling to be less fragile.
We will now alert when the old leader detects a lost quorum just as before, but also detect if a candidate is flapping and failing to get votes because of no quorum.

Signed-off-by: Derek Collison <derek@nats.io>
2021-01-28 09:27:17 -08:00
Derek Collison
8b79114168 Add in advisories for leader elected and quorum lost advisories.
Note that quorum lost only fires if the old leader steps down.
If the leader itself fails and that causes the loss of quorum currently no advisory is sent.

Signed-off-by: Derek Collison <derek@nats.io>
2021-01-28 08:37:54 -08:00
Derek Collison
ab5f98c7b4 Help with flappers
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-28 05:23:51 -08:00
Derek Collison
6d27307453 Fix for broken stream restore functionality
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-27 17:44:42 -08:00
Derek Collison
132a4e7f7d Allow memory store for clustering
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-27 15:54:39 -08:00
Derek Collison
a9b8948abe Add in tracking for quorum in raft and do auto stepdown.
Also added in API responses when no leader is present for meta, streams and consumers.

Signed-off-by: Derek Collison <derek@nats.io>
2021-01-27 13:34:00 -08:00
Derek Collison
9b6dbe112c Make sure randomServer() adapts for shutdown servers
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-25 20:14:11 -08:00
Derek Collison
27f8cbd069 Wait for interest
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-25 19:46:43 -08:00
Derek Collison
83e2c719b7 Wait in case stopped server was also stream leader
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-25 19:00:51 -08:00
Derek Collison
0e5e9cb5ee Possible retry in case peers have not committed state
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-25 18:54:42 -08:00
Derek Collison
e40c3e6f55 Templates not supported currently in clustered mode
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-25 17:13:31 -08:00
Derek Collison
c8a75e1ed0 test fixes
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-25 16:15:28 -08:00
Derek Collison
76058c5ec6 Timing for state propagation
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-25 14:32:38 -08:00
Derek Collison
c7c86c7929 Attempt to fix flapper
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-25 10:25:47 -08:00
Derek Collison
5148bbf898 Fixes based on PR feedback, cleanup
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-25 10:04:21 -08:00
Derek Collison
7b1e84c086 Fixed raft bug that would cause entries to be missed on restart with leader HB trigger.
Also added in creation times to stream and consumer assignments to make them consistent.

Signed-off-by: Derek Collison <derek@nats.io>
2021-01-25 08:47:37 -08:00
Derek Collison
117607ef11 Fix for race and test for issue R.I. was seeing in nightly. Also fixed flappers.
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-24 21:21:02 -08:00
Derek Collison
a72ddedb55 Fix for issue with stream info and R=1 and fix for a flapper
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-24 19:48:33 -08:00
Derek Collison
9c858d197a Added ability to properly restore consumers from a snapshot.
This made us add forwarding proposals functionality in the raft layer.
More general cleanup and bug fixes as well.

Signed-off-by: Derek Collison <derek@nats.io>
2021-01-24 19:30:34 -08:00
Derek Collison
cad0db2aec Cleanup the consumer assignments when consumers become inactive.
This involved extending our raft implementation to forward proposals to the current leader.

Signed-off-by: Derek Collison <derek@nats.io>
2021-01-23 13:44:10 -08:00
Derek Collison
d1d2d5b24e Fix for consumer names list in clustered mode
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-23 10:09:44 -08:00
Derek Collison
d7cfb8f6e9 Use client version for stream and consumer extended info
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-22 13:11:36 -08:00
Derek Collison
a43a69a403 Fix for interest only, broken test
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-22 11:04:06 -08:00
Derek Collison
227901a56b More cleanup and stabilization for consumers and failing when sending messages.
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-22 10:09:30 -08:00
Derek Collison
6f2b50a374 Added support for clustered account info and limit enforcement
Signed-off-by: Derek Collison <derek@nats.io>
2021-01-21 18:47:21 -08:00