Commit Graph

49 Commits

Author SHA1 Message Date
Ivan Kozlovic
e7e756034a Switch Gateway JS accounts to interest-only mode + some other fixes
- Fixed the close of a TLS connection which starting Go 1.16
set the deadline to 5 seconds.

- Fixed an issue with setHeader that was causing these error messages
```
=== RUN   TestServiceImportReplyMatchCycleMultiHops
nats: message could not decode headers on connection [4] for subscription on "foo"
--- PASS: TestServiceImportReplyMatchCycleMultiHops (0.04s)
```

- Fixed names of tests in norace_test.go since they must start with
TestNoRace in order to make sure that we execute them in Travis:
```
go test -v -run=TestNoRace --failfast -p=1 ./...
```

Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
2021-03-03 19:15:28 -07:00
Ivan Kozlovic
0f53bf6580 Fixed data race with nodeInfo
Took the approach of storing struct instead of pointer. Of course,
when changing the offline bool from false to true, it means that
we need to call Store again (with same key).

This is based on the assumption that those Load/Store are not too
frequent. Otherwise, we may need to use locking (and keep *nodeInfo)

Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
2021-03-03 13:28:45 -07:00
Derek Collison
66cbf75712 Merge branch 'master' into consumer 2021-03-03 10:29:39 -07:00
Derek Collison
5da343eed8 More time for consumer delivered state to propagate
Signed-off-by: Derek Collison <derek@nats.io>
2021-03-03 07:43:03 -08:00
R.I.Pienaar
236498a142 restore meta peer remove by name rather than id
Signed-off-by: R.I.Pienaar <rip@devco.net>
2021-03-03 15:55:50 +01:00
Derek Collison
af6b5d856a Better errors, no need to wait on leader twice
Signed-off-by: Derek Collison <derek@nats.io>
2021-03-03 06:45:27 -08:00
Derek Collison
c6b0ed6069 Flapping test
Signed-off-by: Derek Collison <derek@nats.io>
2021-03-03 05:06:24 -08:00
Derek Collison
d084853aff Actually need to wait to accumulate, make sure we get at least 8.
Signed-off-by: Derek Collison <derek@nats.io>
2021-03-02 18:33:22 -08:00
Derek Collison
04634d3358 One less api call
Signed-off-by: Derek Collison <derek@nats.io>
2021-03-02 18:28:06 -08:00
Derek Collison
a3c526a0eb Merge pull request #1951 from nats-io/xmirrors
Enable cross account behaviors for mirrors and sources.
2021-03-02 08:30:48 -07:00
R.I.Pienaar
84f4b0fc44 Merge pull request #1950 from ripienaar/meta_peer_remove_id
update api types, remove meta peer by id
2021-03-02 16:14:28 +01:00
Derek Collison
49cd38c064 Enable cross account behaviors for mirrors and sources.
Signed-off-by: Derek Collison <derek@nats.io>
2021-03-02 06:36:57 -08:00
R.I.Pienaar
a9ed69a2df update api types, remove meta peer by id
Signed-off-by: R.I.Pienaar <rip@devco.net>
2021-03-02 15:35:02 +01:00
Derek Collison
d4a8baf030 Stabilize test, wait a bit for migration
Signed-off-by: Derek Collison <derek@nats.io>
2021-03-02 05:28:55 -08:00
Derek Collison
9e181b8d0d Consumers were double processing as leaders
Signed-off-by: Derek Collison <derek@nats.io>
2021-03-01 18:37:35 -08:00
Derek Collison
e817ecfb80 Wait for consumer migration
Signed-off-by: Derek Collison <derek@nats.io>
2021-03-01 17:10:10 -08:00
Derek Collison
22749fb1e2 Fix data race, stabilize usage test
Signed-off-by: Derek Collison <derek@nats.io>
2021-03-01 16:47:19 -08:00
Derek Collison
c8e2ad6248 Make sure trailing usage updates accounted for eventually
Signed-off-by: Derek Collison <derek@nats.io>
2021-03-01 14:23:06 -08:00
Derek Collison
fbc492fef7 Use .Equal
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-28 19:11:55 -08:00
Derek Collison
0a6958b98c Fix some flapping tests
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-28 17:35:09 -08:00
Derek Collison
df77724aa4 Make ephemeral consumers R=1 and provide optimistic migration on peer removal or server shutdown.
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-28 16:50:25 -08:00
Derek Collison
03954eedc6 Enable cluster server removal API.
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-28 14:14:36 -08:00
Derek Collison
e0d08e1a22 Check for stream updates and disallow changes to mirrors and replicas for now.
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-28 12:04:40 -08:00
Derek Collison
8cfc56f8b0 Enable support for changing config on stream restore.
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-28 10:01:01 -08:00
Derek Collison
b9e1a921ff Use internal wildcard inbox for stream and consumer info requests.
More gateway friendly but suffers from no echo, so added new client based internal send.

Signed-off-by: Derek Collison <derek@nats.io>
2021-02-28 10:01:01 -08:00
Derek Collison
57a6599777 Test updates
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-28 05:19:45 -08:00
Matthias Hanel
c73d3b21eb changing NEXT expires field from time to duration in nanoseconds
Signed-off-by: Matthias Hanel <mh@synadia.com>
2021-02-26 20:45:44 -05:00
Derek Collison
69ffff2278 Skip test for now
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-25 20:02:06 -08:00
Derek Collison
e5c8774172 Handle out of space situations, general stability enhancements
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-25 17:54:29 -08:00
Derek Collison
7ef3e5b629 Remove slow advisory checks
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-25 04:17:56 -08:00
Derek Collison
b7a5587b0c spelling
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-24 20:50:00 -08:00
Derek Collison
36a2cbeff7 Cross account pull consumers would not work correctly due to reply subject rewrite.
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-24 13:33:24 -08:00
Derek Collison
23d7725104 Removed this one due to slow timing now
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-24 09:16:50 -08:00
Derek Collison
84321f6697 These are slower so need to wait longer
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-24 08:55:58 -08:00
Derek Collison
ebd522d732 Test cleanup
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-23 17:20:30 -08:00
Derek Collison
8fe8b835fe Fixes for flapping tests
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-23 14:08:17 -08:00
Derek Collison
09e3d26fa3 Add in support for stream mirrors and sources.
Add in proper support for stream updates in clustered mode.
Don't send API updates without subjects, caused GW parser errors.
Stream internal loops use their own clients now.

Signed-off-by: Derek Collison <derek@nats.io>
2021-02-23 10:57:27 -08:00
Derek Collison
fa8a74ceb5 Allow placement directives for metacontroller stepdown to allow placement to new clusters.
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-19 10:55:22 -08:00
Derek Collison
e81b208591 Change for client update in api requests
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-18 20:05:53 -08:00
Derek Collison
afea79610a Consumer interest was not properly handled cross cluster.
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-18 18:29:59 -08:00
Derek Collison
d803189eca Changes needed to properly support multi-layer service imports for system services like JS.
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-12 17:01:32 -08:00
Derek Collison
5ef4d138cb Interest based retention did not work correctly with wildcards or multiple subjects and filtered consumers.
This allows that to work properly, needed for MQTT.

Signed-off-by: Derek Collison <derek@nats.io>
2021-02-11 20:59:20 -08:00
Derek Collison
d70ae1fb97 Fix for interest policy based retention for streams in clusters.
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-11 18:52:37 -08:00
Derek Collison
579737a5e1 General fixes, stability improvements
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-11 18:13:24 -08:00
Derek Collison
fa8a95a06a Improved snapshots and compactions.
Various bug fixes and stability improvements.

Signed-off-by: Derek Collison <derek@nats.io>
2021-02-11 11:16:00 -08:00
Derek Collison
ad0f10fb5c Allow metaleader stepdown.
Allow easy way to put authorization on system account and still use $G.

Signed-off-by: Derek Collison <derek@nats.io>
2021-02-08 15:01:23 -08:00
Derek Collison
c99608fa65 Fix for some test flappers
Signed-off-by: Derek Collison <derek@nats.io>
2021-02-08 07:00:52 -08:00
Derek Collison
15355d783b For larger superclusters we send out our server information after a short delay on startup.
For determing leaderless make sure the raft node has been running for long enough.

Signed-off-by: Derek Collison <derek@nats.io>
2021-02-08 06:26:33 -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