Commit Graph

4232 Commits

Author SHA1 Message Date
Deepak
e9ce118c56 Fix peer randomisation when creating consumers groups for replica=1
Signed-off-by: Deepak <sah.sslpu@gmail.com>
2022-09-14 13:58:49 +05:30
Ivan Kozlovic
a41af2bdcb Merge pull request #3463 from nats-io/jnm/fix_mapping_split
[FIXED] Edge condition handling in {{Split()}} subject mapping function
2022-09-09 14:39:19 -06:00
jnmoyne
a1f90b8776 Fixes mishandling of an edge condition in the {{Split()}} subject mapping function 2022-09-09 12:42:03 -07:00
Ivan Kozlovic
29224c8ea9 Split more tests to speed up Travis run
Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
2022-09-09 12:45:48 -06:00
Ivan Kozlovic
925f57ccc2 Bump version to 2.9.1-beta
As per the release process, bumping the version to next update
with beta suffix once the release is out.

Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
2022-09-09 10:17:26 -06:00
Ivan Kozlovic
b979556556 Release v2.9.0
Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
2022-09-09 08:23:48 -06:00
Matthias Hanel
f7cb5b1f0d changed format of JSClusterNoPeers error (#3459)
* changed format of JSClusterNoPeers error

This error was introduced in #3342 and reveals to much information
This change gets rid of cluster names and peer counts.

All other counts where changed to booleans,
which are only included in the output when the filter was hit.

In addition, the set of not matching tags is included.
Furthermore, the static error description in server/errors.json 
is moved into selectPeerError

sample errors:
1) no suitable peers for placement, tags not matched ['cloud:GCP', 'country:US']"
2) no suitable peers for placement, insufficient storage

Signed-off-by: Matthias Hanel <mh@synadia.com>
Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
Co-authored-by: Ivan Kozlovic <ivan@synadia.com>
2022-09-08 18:25:48 -07:00
Derek Collison
fdf52554c7 Bump to 2.9.0-RC.19
Signed-off-by: Derek Collison <derek@nats.io>
2022-09-08 12:08:48 -07:00
Derek Collison
d979937bbd Merge pull request #3456 from nats-io/max-bytes-pull
[IMPROVED] Pull request logic
2022-09-08 12:08:10 -07:00
Derek Collison
dedf21d45d Fix for issue #3455
When hitting max ack pending from getNextMsg would remove one shots incorrectly.

Signed-off-by: Derek Collison <derek@nats.io>
2022-09-08 11:56:57 -07:00
Derek Collison
b32814d5fd Better accounting for max-bytes for pull consumers
Signed-off-by: Derek Collison <derek@nats.io>
2022-09-08 11:56:57 -07:00
Ivan Kozlovic
ae0d808f5b Merge pull request #3457 from nats-io/cleanup_tests
Fixed some tests
2022-09-08 12:24:07 -06:00
jnmoyne
95c1946231 Implements pagination for JS Stream Info requests 2022-09-08 10:45:20 -07:00
Ivan Kozlovic
b69ffe244e Fixed some tests
Code change:
- Do not start the processMirrorMsgs and processSourceMsgs go routine
if the server has been detected to be shutdown. This would otherwise
leave some go routine running at the end of some tests.
- Pass the fch and qch to the consumerFileStore's flushLoop otherwise
in some tests this routine could be left running.

Tests changes:
- Added missing defer NATS connection close
- Added missing defer server shutdown

Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
2022-09-08 11:28:23 -06:00
Matthias Schneider
a58a7bf1ec server: expire display Never instead of 1970 2022-09-08 10:03:04 +02:00
Derek Collison
a7744026e1 Bump to 2.9.0-RC.18
Signed-off-by: Derek Collison <derek@nats.io>
2022-09-07 19:35:56 -07:00
Ivan Kozlovic
8c1c6951dc JetStream: R1 durables were incorrectly migrated on shutdown
This could happen for stream with R>1 but with a durable that
has an override of R=1.

Fixed a test to make sure assets have an elected leader.

Also fixed a gateway test that would cause a data race.

Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
2022-09-07 19:49:16 -06:00
Derek Collison
53453932a8 Need to wait on cluster ready
Signed-off-by: Derek Collison <derek@nats.io>
2022-09-07 16:07:09 -07:00
Derek Collison
c3203a3bb5 Use lostQuorum default versus live for reporting.
Signed-off-by: Derek Collison <derek@nats.io>
2022-09-07 13:56:38 -07:00
Derek Collison
b86e941ce4 tweak lost quorum reporting
Signed-off-by: Derek Collison <derek@nats.io>
2022-09-07 10:57:01 -07:00
Derek Collison
fbf2233e4a Only complain about leaderless group with previous leader if we know jetstream has been running for some threshold.
Signed-off-by: Derek Collison <derek@nats.io>
2022-09-07 08:47:55 -07:00
Derek Collison
a4b6b2041f Bump to 2.9.0-RC.17
Signed-off-by: Derek Collison <derek@nats.io>
2022-09-06 17:02:13 -07:00
Ivan Kozlovic
fbc7c25520 Merge pull request #3435 from nats-io/mon-js-reserved-stats
js: add per account reserved mem/store bytes
2022-09-06 18:01:22 -06:00
Waldemar Quevedo
46d73eddae js: add per account reserved mem/store bytes
Signed-off-by: Waldemar Quevedo <wally@nats.io>
2022-09-06 16:43:10 -07:00
Derek Collison
84b95be56e NoAck allowed now on pull consumers
Signed-off-by: Derek Collison <derek@nats.io>
2022-09-06 15:19:17 -07:00
Derek Collison
e4a6b6bc94 Merge pull request #3441 from nats-io/no-auto-direct-get
Do not auto-promote direct get functionality.
2022-09-06 13:35:46 -07:00
Derek Collison
9c3bd17059 Updates to tests
Signed-off-by: Derek Collison <derek@nats.io>
2022-09-06 13:33:39 -07:00
Derek Collison
b850a95d4c Remove auto-promotion of direct get. Force stream config to set AllowDirect to true.
Signed-off-by: Derek Collison <derek@nats.io>
2022-09-06 13:33:39 -07:00
Ivan Kozlovic
8a71c642c6 Merge pull request #3439 from mprimi/nats-pub-benchmark
NATS Publish benchmark
2022-09-06 11:24:06 -06:00
Marco Primi
e498781921 NATS Publish benchmark 2022-09-06 09:52:45 -07:00
Ivan Kozlovic
16eb2af0ec [FIXED] JetStream: Restarted queue subscriptions may not receive msgs
The server was not properly handling queue subscriptions internal
notifications which could lead to messages not being delivered
to applications using a queue group to consume from a JetStream
consumer after they were restarted.

Resolves #1066

Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
2022-09-05 16:38:43 -06:00
Ivan Kozlovic
c4b5ca7cff Merge pull request #3433 from nats-io/js_offline_nodes
[FIXED] JetStream: Some nodes may never be reported as offline
2022-09-01 13:28:29 -06:00
Ivan Kozlovic
88ece75765 [FIXED] JetStream: Some nodes may never be reported as offline
In some rare situations, it is possible that nodes are added
to the cluster but are not properly tracked and not shown as
offline when they exit the cluster.

Relates to #3258

Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
2022-09-01 12:48:12 -06:00
Marco Primi
1e040a5569 KeyValue Put/Get/Update benchmark 2022-08-31 17:12:29 -07:00
Derek Collison
4b5e0a3f87 Merge pull request #3429 from nats-io/stream-overlap-subjects
[FIXED] Do not allow overlap between multiple subjects for a stream.
2022-08-31 16:19:27 -07:00
Ivan Kozlovic
ca54468f3d Merge pull request #3425 from mprimi/js-publish-and-consume-benchmarks
Publish and consume JS benchmarks
2022-08-31 17:12:06 -06:00
Ivan Kozlovic
cc22510669 Merge pull request #3428 from nats-io/fix_3420
[FIXED] JetStream: expired accounts were counted toward limits
2022-08-31 17:06:30 -06:00
Derek Collison
452e3c3955 Make sure update covered
Signed-off-by: Derek Collison <derek@nats.io>
2022-08-31 16:05:32 -07:00
Derek Collison
b649ae8bc3 We detected overlap between different streams but not same stream with multiple subjects.
Signed-off-by: Derek Collison <derek@nats.io>
2022-08-31 15:51:39 -07:00
Ivan Kozlovic
c8af84d3d1 [FIXED] JetStream: expired accounts were counted toward limits
Fix from @JulienVdG in PR #3421. Adding simply a test and make
sure that tests run.

Resolves #3420

Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
2022-08-31 16:40:11 -06:00
Marco Primi
2c3879585c JetStream publish and consume benchmarks 2022-08-31 14:52:45 -07:00
Marco Primi
e0821cfa3d Compose cluster URL without trailing comma
Related to: https://github.com/nats-io/nats.go/issues/1056
2022-08-31 14:52:45 -07:00
Marco Primi
f1883561ee Use testing.TB interface instead of *T
Using interface allows reusing helper function in benchmarks
2022-08-31 14:52:45 -07:00
Marco Primi
28d38c0213 Move bitset test utility
From Chaos helpers (excluded from build by default) to JetStream helpers
2022-08-31 14:52:45 -07:00
Derek Collison
62f91c1dd2 Bump to 2.9.0-RC.16
Signed-off-by: Derek Collison <derek@nats.io>
2022-08-31 14:07:47 -07:00
Ivan Kozlovic
8d1fb4bc92 [FIXED] JetStream: possible routing issues through gateways
Internally jetstream may subscribe to some subject and then send
a request with a reply subject matching that subscription.
Due to interest propagation through a super cluster, it is possible
that the reply comes back to a node that is not yet aware of
the subscription interest which would cause the reply to be dropped.

Some code detects that the subscription is recent and "map" the
reply subject so that it can be routed back to the origin server.
However, this was done with the use of the connection object that
created the subscription, but at the time of the send, a different
internal "*client" object may be used which would then cause
the code to not be aware of the recent subscription and not do
the mapping.

This code was changed to scope at the account level instead of
connection.

A recent change in PR #3412 is no longer needed and was reverted
in favor of changes in this PR.

Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
2022-08-31 14:18:28 -06:00
Ivan Kozlovic
5573933034 Bump back the defaultMaxTotalCatchupOutBytes to 128MB
Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
2022-08-31 09:19:28 -06:00
Derek Collison
119f1492ec [FIXED] Subjects collide would not properly return false in some conditions.
Signed-off-by: Derek Collison <derek@nats.io>
2022-08-31 06:38:43 -07:00
Derek Collison
cb3b88d4e4 Bump to 2.9.0-RC.15
Signed-off-by: Derek Collison <derek@nats.io>
2022-08-30 16:24:11 -07:00
Derek Collison
98bf861a7a Updates to stream and consumer move logic.
Signed-off-by: Derek Collison <derek@nats.io>
2022-08-30 16:11:35 -07:00