Commit Graph

2579 Commits

Author SHA1 Message Date
Derek Collison
ac40ecaef9 Durable reassignment and takeover
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:07:02 -07:00
Derek Collison
77c75baa6e Flush first progress ack
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:07:02 -07:00
Derek Collison
0fb7ee32bc Auto-expiration of ephemeral push based observables
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:07:02 -07:00
Derek Collison
d02b2a3d9c NoAck option for MsgSets
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:07:02 -07:00
Derek Collison
d327a91143 Working ACK indicator
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:07:02 -07:00
Derek Collison
4eee93dea0 NAK for workers
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:07:02 -07:00
Derek Collison
0a92d8e87d AckWait and redelivery
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:07:02 -07:00
Derek Collison
ccbd3d6032 cleanup
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:07:02 -07:00
Derek Collison
5576463635 ack prep
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:07:02 -07:00
Derek Collison
16e6952cd6 Move load balance test to norace
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:07:02 -07:00
Derek Collison
4698292d4f Added push based observable no ack benchmark
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:07:02 -07:00
Derek Collison
5d5d5cbd60 Add AckNext and batch size for worker pull mode
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:07:02 -07:00
Derek Collison
a9d1989047 test updates
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:07:02 -07:00
Derek Collison
ea85d0130f Reworked load balance test
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:07:02 -07:00
Derek Collison
cd3c1c7a3f Basic partitioning
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:07:02 -07:00
Derek Collison
98b78d06c4 First pass pull mode, e.g. worker
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:07:02 -07:00
Ivan Kozlovic
9214fa2995 Update expiration test
Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
2020-05-19 14:06:29 -07:00
Ivan Kozlovic
09c1acc36c Fix message expiration
Also add missing `package` for sysmem/windows

Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
2020-05-19 14:06:29 -07:00
Derek Collison
dd116fcfd4 JetStream first pass basics.
This is the first checkin for JetStream. Has some rudimentary basics working.

TODO
1. Push vs pull mode for observables. (work queues)
2. Disk/File store, memory only for now.
3. clustering code - design shaping up well.
4. Finalize account import semantics.
5. Lots of other little things.

Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:06:29 -07:00
Ivan Kozlovic
2b8ebfcf07 Merge pull request #1403 from nats-io/account_system_operator
Pointing to jwt master
2020-05-19 14:25:47 -06:00
Matthias Hanel
84e52bfb44 Pointing to jwt master
Signed-off-by: Matthias Hanel <mh@synadia.com>
2020-05-19 16:06:22 -04:00
Ivan Kozlovic
92cb24c5f2 Merge pull request #1400 from nats-io/account_system_operator
Account system operator
2020-05-19 13:48:18 -06:00
Matthias Hanel
aa1a768cce Move system account check to validateTrustedOperators
As a consequence of this change, certain unit tests had to actually
start the server and move to a memory resolver to keep the test simpler.

Signed-off-by: Matthias Hanel <mh@synadia.com>
2020-05-19 15:39:18 -04:00
Matthias Hanel
e509ec59a1 Raise error when system_account in config and operator jwt do not match
Signed-off-by: Matthias Hanel <mh@synadia.com>
2020-05-18 23:35:43 -04:00
Matthias Hanel
a2744858bc Looking up system_account from operator jwt
Signed-off-by: Matthias Hanel <mh@synadia.com>
2020-05-18 19:09:46 -04:00
Matthias Hanel
a989024075 Picking up jwt branch corresponding to this change
Signed-off-by: Matthias Hanel <mh@synadia.com>
2020-05-18 18:57:39 -04:00
Ivan Kozlovic
bf0930ee76 Merge pull request #1394 from nats-io/release_2_1_7
Release v2.1.7
v2.1.7
2020-05-14 11:33:56 -06:00
Ivan Kozlovic
b329215af3 Release v2.1.7
Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
2020-05-13 19:40:49 -06:00
Ivan Kozlovic
54e014070f Merge pull request #1392 from guilherme-santos/master
[ADDED] base path for monitoring endpoints
2020-05-13 16:28:57 -06:00
Guilherme Santos
25858cba0b Implement basePath for monitoring endpoints 2020-05-13 23:29:11 +02:00
Ivan Kozlovic
0c3acfbaad Merge pull request #1393 from nats-io/internal_client_reload
Move reset of internal client to after the account sublist was moved.
2020-05-13 14:43:30 -06:00
Matthias Hanel
d486f6ab9b Move reset of internal client to after the account sublist was moved.
This does not avoid the race condition, but makes it less likely to
trigger in unit tests.

Signed-off-by: Matthias Hanel <mh@synadia.com>
2020-05-13 15:52:29 -04:00
Ivan Kozlovic
09a58cbada Merge pull request #1387 from nats-io/reload
[FIXED] Unnecessary account reloads
2020-05-12 16:09:39 -06:00
Ivan Kozlovic
9a6c840039 Merge pull request #1391 from nats-io/default_perms
[FIXED] default_permissions apply to nkey users as well
2020-05-12 16:08:12 -06:00
Matthias Hanel
04b81abdde [FIXED] default_permissions apply to nkey users as well
Fixes 1390

Signed-off-by: Matthias Hanel <mh@synadia.com>
2020-05-12 17:13:25 -04:00
Matthias Hanel
11c0669ae2 [FIXES] Unnecessary account reloads and pointer to old accounts
Fixes #1372 by updating s.sys.account pointer.

This issue also showed that accounts are unnecessarily reloaded.
This happened because account imports were not copied and thus,
deepEqual detected a difference were none was.
This was addressed by making the copy less shallow.

Furthermore did deepEqual detects a difference when it compared
slices that were appended to while processing a map.
This was fixed by sorting before comparison.

Noticed that Account.clients stored an unnecessary pointer.
Removed duplicated code in systemAccount.

Signed-off-by: Matthias Hanel <mh@synadia.com>
2020-05-11 21:51:41 -04:00
Waldemar Quevedo
db5c8aec8a Merge pull request #1386 from wallyqs/tls-auth-rdns
Add support to match domainComponent (DC) in RDNSequence with TLS Auth
2020-05-11 17:54:54 -07:00
Waldemar Quevedo
9a2d095885 Add support to match domainComponent (DC) in RDNSequence with TLS Auth
Currently when using TLS based authentication, any domain components
that could be present in the cert will be omitted since Go's
ToRDNSequence is not including them:

202c43b2ad/src/crypto/x509/pkix/pkix.go (L226-L245)

This commit adds support to include the domain components in case
present, also roughly following the order suggested at:
https://tools.ietf.org/html/rfc2253

Signed-off-by: Waldemar Quevedo <wally@synadia.com>
2020-05-11 17:41:11 -07:00
Ivan Kozlovic
80b4857cd7 Merge pull request #1385 from nats-io/fix_close_conn
[FIXED] Early closed connection may linger in the server
2020-05-08 12:01:57 -06:00
Ivan Kozlovic
46f880bc52 [FIXED] Early closed connection may linger in the server
If the connection is marked as closed while sending the INFO, the
connection would not be removed from the internal map, which would
cause it to be shown in the monitoring list of opened connections.

Resolves #1384

Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
2020-05-08 12:01:15 -06:00
Ivan Kozlovic
81fabde729 Merge pull request #1362 from nats-io/monitoring_as_systemevents
[ADDED] Making monitoring endpoints available via system services.
2020-05-07 11:37:50 -06:00
Ivan Kozlovic
1ab26dfa0f Merge pull request #1381 from nats-io/validateOnReload
[FIXED] on reload, check error conditions checked in validateOptions
2020-05-06 15:50:03 -06:00
Matthias Hanel
0eae40070b [FIXED] on reload, check error conditions checked in validateOptions
Fixes #1378 by calling validateOptions on reload
Add missing comment to validateOptions

Signed-off-by: Matthias Hanel <mh@synadia.com>
2020-05-06 17:38:28 -04:00
Ivan Kozlovic
7e60769f9e Merge pull request #1377 from nats-io/subsz
[FIXED] subsz monitoring endpoint did not account for accounts.
2020-05-06 14:06:12 -06:00
Matthias Hanel
136feb9bc6 [FIXEd] subsz monitoring endpoint did not account for accounts.
Fixes  #1371 and #1357 by adding up stats and collecting subscriptions
from all accounts.

Signed-off-by: Matthias Hanel <mh@synadia.com>
2020-05-06 15:48:51 -04:00
Ivan Kozlovic
b1f1e878c6 Merge pull request #1363 from nats-io/default_user
[ADDED] Configuration to allow non authorized user to bind to a given account
2020-05-06 10:02:13 -06:00
Matthias Hanel
14c716052d Making monitoring endpoints available via system services.
Available via $SYS.REQ.SERVER.%s.%s and $SYS.REQ.SERVER.PING.%s
Last token is the endpoint name.

Signed-off-by: Matthias Hanel <mh@synadia.com>
2020-05-04 13:31:50 -04:00
Matthias Hanel
b074c941ae Add a no_auth_user
This configuration allows to refer to a configured user to be used when
the connection provides no credentials.

Signed-off-by: Matthias Hanel <mh@synadia.com>
2020-05-02 15:59:06 -04:00
Derek Collison
487e7bdff7 Merge pull request #1364 from nats-io/tyler_split_issue_templates
Use split GitHub issue templates
2020-04-30 05:27:53 -07:00
Tyler Neely
27882a93cd Add header with the issue type to the top of the issue templates 2020-04-30 02:45:15 +02:00