Ivan Kozlovic
9fee6c6997
Merge pull request #2203 from nats-io/fix_flappers
...
Fixed flappers
2021-05-11 08:47:48 -06:00
Matthias Hanel
6c6c4b9c04
Merge pull request #2204 from nats-io/mirror-dedupe
...
[added] check for mirror stream return error when de dupe window is set
2021-05-10 20:47:03 -04:00
Matthias Hanel
f4251feb0f
[added] check for mirror stream return error when de dupe window is set
...
Signed-off-by: Matthias Hanel <mh@synadia.com >
2021-05-10 19:57:17 -04:00
Ivan Kozlovic
25bf470363
Fixed flappers
...
Signed-off-by: Ivan Kozlovic <ivan@synadia.com >
2021-05-10 16:54:33 -06:00
Ivan Kozlovic
4ae9beddea
Merge pull request #2189 from ripienaar/export_clientopts
...
Export the clientOpts structure
2021-05-10 13:51:57 -06:00
Derek Collison
09c4f5841c
Bump version and skip test for now, will fix in followup PR.
...
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-10 10:44:07 -07:00
Ivan Kozlovic
b828e01761
Merge pull request #2196 from nats-io/release_2_2_3
...
Release v2.2.3
v2.2.3
2021-05-07 17:30:45 -06:00
Ivan Kozlovic
ebe31008ad
Release v2.2.3
...
Signed-off-by: Ivan Kozlovic <ivan@synadia.com >
2021-05-07 17:11:59 -06:00
Ivan Kozlovic
593305dbf6
Merge pull request #2195 from nats-io/stream_name_validate
...
Extend stream/consumer name validation to include more characters
2021-05-07 17:06:56 -06:00
Matthias Hanel
4355e393ea
Merge pull request #2194 from nats-io/js-domains
...
[added] filter system requests by JS domain
2021-05-07 19:06:37 -04:00
Matthias Hanel
230128ed01
[added] filter system requests by JS domain
...
Signed-off-by: Matthias Hanel <mh@synadia.com >
2021-05-07 18:58:40 -04:00
Ivan Kozlovic
19e07f7b97
Extend stream/consumer name validation to include more characters
...
Signed-off-by: Ivan Kozlovic <ivan@synadia.com >
2021-05-07 16:50:29 -06:00
Derek Collison
346ce7539b
Merge pull request #2193 from nats-io/filtered_interest
...
When dealing with filtered subjects do not assume the current state
2021-05-07 15:29:20 -07:00
Derek Collison
50bc1867bd
When dealing with filtered subjects do not assume the current state as others can.
...
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-07 15:20:19 -07:00
Derek Collison
26b9295591
2.2.3-beta.8
...
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-07 14:21:13 -07:00
Derek Collison
9a517194a1
Merge pull request #2191 from nats-io/raft_catchup_snap
...
[FIXED] Raft groups could continually spin trying to catch up.
2021-05-07 14:20:37 -07:00
Derek Collison
4500f7889e
For WorkQueues that have direct we need to make sure they have received the message before deleting.
...
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-07 14:13:36 -07:00
Derek Collison
bd9172fb61
With WorkQueue policy streams that are mirrored or sourced need to only delete if no regular consumers.
...
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-07 13:14:56 -07:00
Derek Collison
f74bb53c83
Remove debug
...
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-07 12:21:35 -07:00
Derek Collison
70a2521f95
For interest or workqueue streams with ephemerals we need to not reduce replication to 1.
...
We need the consumer state on the stream leader.
Also if we can't find the store yet for a consumer fallback to calculate needsAck.
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-07 12:07:27 -07:00
Derek Collison
95a9304ae7
Tweak timing
...
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-07 12:07:27 -07:00
Ivan Kozlovic
3b15f98ed3
Merge pull request #2190 from ripienaar/domain_advisories
...
add domain in JS advisories
2021-05-07 11:52:15 -06:00
Ivan Kozlovic
b085738339
Merge pull request #2192 from nats-io/mqtt_domain
...
Don't need to store domain in mqttJSA structure
2021-05-07 11:47:32 -06:00
R.I.Pienaar
b5f846a719
add domain in JS advisories
...
Signed-off-by: R.I.Pienaar <rip@devco.net >
2021-05-07 19:35:46 +02:00
Ivan Kozlovic
7cd412d08d
Don't need to store domain in mqttJSA structure
...
At the time where we need the domain to construct the session hash,
we have access to server options. So use that instead of storing
the domain in the internal mqtt structure.
Signed-off-by: Ivan Kozlovic <ivan@synadia.com >
2021-05-07 11:29:46 -06:00
Derek Collison
57395bba02
Fixed bug that could cause raft group to spin trying to catchup.
...
When a raft group was trying to catch up a consumer but the log is empty and we do have a snapshot but the requested sequence was the first sequence.
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-07 09:13:18 -07:00
Derek Collison
7be6555334
Merge pull request #2187 from nats-io/interest_deadlock
...
[FIXED] Mirror/Source streams from work queues and a deadlock on interest streams.
2021-05-07 08:52:26 -07:00
Derek Collison
ceb4a86d57
Check for nil chan
...
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-07 08:36:45 -07:00
R.I.Pienaar
5e06e5e232
Export the clientOpts structure
...
This structure is used in ClientAuthentication, an interface
designed to let 3rd parties extend the authentication mechanisms
of the server
In order to allow those 3rd parties to create unit tests, mocks etc
we need to export this structure so it's accessible externally
Signed-off-by: R.I.Pienaar <rip@devco.net >
2021-05-07 15:51:31 +02:00
Derek Collison
7715a5b30a
2.2.3-beta.7
...
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-07 06:47:34 -07:00
Derek Collison
b6ba5cb4a5
Merge pull request #2188 from nats-io/perm_subjects
...
Detect if perm subjects have queue group qualifiers.
2021-05-07 06:46:33 -07:00
Derek Collison
32db711723
Detect if perm subjects have queue group qualifiers.
...
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-07 06:27:43 -07:00
R.I.Pienaar
7f895f45ea
Merge pull request #2186 from ripienaar/domain_tweaks
...
small tweaks to domains
2021-05-07 15:17:41 +02:00
Derek Collison
35a60289d9
Fixed mirror/source streams from work queues.
...
Fixed deadlock with no-ack consumers on interest retention streams.
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-07 06:01:52 -07:00
R.I.Pienaar
cc9b6735a5
remove . from domain names
...
Signed-off-by: R.I.Pienaar <rip@devco.net >
2021-05-07 14:46:22 +02:00
R.I.Pienaar
0bc6ac2e14
small tweaks to domains
...
Signed-off-by: R.I.Pienaar <rip@devco.net >
2021-05-07 11:03:23 +02:00
Derek Collison
6ecfda8d9c
2.2.3-beta.6
...
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-06 20:13:11 -07:00
Derek Collison
13f0f67465
Merge pull request #2185 from nats-io/bad_domain
...
Check for bad domain names
2021-05-06 20:12:15 -07:00
Derek Collison
c2fcc114a5
Update based on PR feedback, moved to validateOptions
...
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-06 20:10:44 -07:00
Derek Collison
5a8791b1ef
Check for bad domain names
...
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-06 19:41:43 -07:00
Ivan Kozlovic
c7e043b264
Merge pull request #2171 from nats-io/islands
...
Add in formal support for multiple JetStream domains across leafnodes.
2021-05-06 20:30:48 -06:00
Ivan Kozlovic
a9a49cc2d5
MQTT make session streams domain aware
...
Signed-off-by: Ivan Kozlovic <ivan@synadia.com >
2021-05-06 20:02:00 -06:00
Derek Collison
2002ea1ee5
Another test fix
...
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-06 18:46:32 -06:00
Derek Collison
50d5875aa3
Fix test
...
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-06 18:46:32 -06:00
Derek Collison
0c74a850b5
Make storedir consistent with mix of flags etc
2021-05-06 18:46:32 -06:00
Derek Collison
ea5cddd590
Moved the JetStream logic for solicited leafnodes to after we receive first info.
...
We needed access to the other side's JetStream status.
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-06 18:46:32 -06:00
Ivan Kozlovic
f5eb8bef89
Fixed some tests to manually close account resolver
...
Those tests don't really start the server, so the account resolver's
internal expiration routine would be left running.
Doing an explicit close solves this issue.
Signed-off-by: Ivan Kozlovic <ivan@synadia.com >
2021-05-06 18:46:32 -06:00
Derek Collison
8499376575
Add in support for JetStream domains.
...
This allows a domain to be set in the JetStream server block that sets a domain name.
Once set this signals that any leafnode connections should operate as separate JetStream domains.
Each domain <NAME> is accessible via "$JS.<NAME>.API.>", even when connected to the same domain.
Also for mixed mode you can set a jetstream block now that defines a domain but specifies "enabled: false".
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-06 18:46:32 -06:00
Derek Collison
41ec9359fc
Update client to released version
...
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-06 18:46:32 -06:00
Derek Collison
bfd0e00271
Fix data race
...
Signed-off-by: Derek Collison <derek@nats.io >
2021-05-06 18:45:27 -06:00