Commit Graph

2678 Commits

Author SHA1 Message Date
Derek Collison
685efc36df Allow JS to work over leafnodes for streams
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
R.I.Pienaar
da5425b3da add some more jetstream options
Signed-off-by: R.I.Pienaar <rip@devco.net>
2020-05-19 14:16:03 -07:00
R.I.Pienaar
ef77156890 allow jetstream to be enabled in the config file 2020-05-19 14:16:03 -07:00
R.I.Pienaar
dc207be04f handles 0 length tokens correctly
Without this nats-req '$JS.TEMPLATE..DELETE' '' causes a panic
2020-05-19 14:16:03 -07:00
R.I.Pienaar
7ee7c19fc7 consistency update in api subjects 2020-05-19 14:16:03 -07:00
R.I.Pienaar
60f1407923 consistent timestamps in events
Use the same key name for time in all events
Use the same format in all events

RFC3339 is the standard for this stuff and
for sure it should all be in UTC rather than
local time
2020-05-19 14:16:03 -07:00
Derek Collison
d9dbe9e9e5 Split out host and port on audit advisories
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
Derek Collison
d5aa55a103 Audit advisories, work based off of #1253 from ripienaar
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
Derek Collison
313dcd21ba Removed condition not needed
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
Derek Collison
5c99355fa5 Separate out consumer API for Durable vs Ephemeral
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
Derek Collison
cd052a42d6 Fix for non-js msg failed delivery stopping normal subscribers
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
Derek Collison
e703d62bd5 Tweak ACK reply subject
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
Derek Collison
f0b5fd2882 Add in API support for templates, proto error helper
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
Derek Collison
4046babb77 Make other API calls for next, ack ,and byseq more aligned with others
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
R.I.Pienaar
88760724e1 also validate that subject matches request 2020-05-19 14:16:03 -07:00
R.I.Pienaar
25e535eab8 add stream name to create subject
I anticipate it would be desirable to allow a microservice running
in an account to create only the stream it needs when it starts up
if there is no stream but no others, so a ACL would be written to
allow that.

Thus adding the T pattern to stream create too.
2020-05-19 14:16:03 -07:00
Derek Collison
72cda966f4 Changed API subjects to be authorization friendly
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
Derek Collison
34ce97bb8c Added support for wildcards for service imports
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
R.I.Pienaar
24939d51db use "advisory" instead of "notification" 2020-05-19 14:16:03 -07:00
R.I.Pienaar
200ebbd47e proposed schemas for events
This is a proposal to add schema, timestamps and unique ids to
events.  For now just JS ones but I propose to do these for all
events the server sends that might be end user consumed.

These exist to help the user identify a message even if it was
sent to a 3rd party system, the schema will be translatable to
a well known url like https://nats.io/schames/jetstream/event/v1/obs_ack.json
or to another wll known identifier like a NATS subject name

We'd publish JSON schema documents at these well known locations
describing each key and so forth
2020-05-19 14:16:03 -07:00
R.I.Pienaar
c9da1ca64a fix purge export subject 2020-05-19 14:16:03 -07:00
Derek Collison
47c28b2fb0 JetStream major refactor for name changes.
MsgSet -> Stream
Observable -> Consumer

Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
Derek Collison
23da0b08ac Pulled out K/V support for now
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
Derek Collison
119c48ee53 Do not allow overlapping message sets for now
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
R.I.Pienaar
7a1cf096ec npe guard around mset access when sampling acks 2020-05-19 14:16:03 -07:00
Derek Collison
7d1431d903 Add in K/V Delete
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
Derek Collison
d836769cab Added in basic K/V scenario
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
Derek Collison
2237915c97 Added in template support
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
Derek Collison
d4c3c481bd Allow ephemeral observables on work queue message sets
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
Derek Collison
f211546b3e Check for store errors
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
Derek Collison
f1a81454b5 Added in error for Delete and Stop for store
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
Derek Collison
a7d7b6ff56 Fix for writing messages after restart and delivery count suppression on max
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
Derek Collison
e3be6f45c4 Add in delete for observables for filestore impl
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
Derek Collison
1028798d3a Move Subject to FilterSubject
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
Derek Collison
89ff13a5be Add MaxDeliver for observables
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
Derek Collison
b3739f9bbf MaxMsgSize for MsgSets, -ERR api cleanup
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
Derek Collison
7e8c74fdbd Pull-based observables must be durable
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
R.I.Pienaar
1d4f6402ba unexported import of Comma function from humanize 2020-05-19 14:16:03 -07:00
Derek Collison
1c939d5cc8 Adjust delivered for obs info via -1
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:16:03 -07:00
R.I.Pienaar
fab4d00141 de-humanize
Signed-off-by: R.I.Pienaar <rip@devco.net>
2020-05-19 14:16:03 -07:00
Derek Collison
37be43ee5a Make sure purge works with redeliveries pending
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:15:11 -07:00
Derek Collison
f78efe2d91 Add Name to Observable info
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:15:11 -07:00
R.I.Pienaar
aa2fe462ba elevate some logging to improve visibility into corruption
Signed-off-by: R.I.Pienaar <rip@devco.net>
2020-05-19 14:15:11 -07:00
Derek Collison
5efdf63625 Fix case where request for next msg times out
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:15:11 -07:00
R.I.Pienaar
05ca8f4346 adds json tags to StoredMsg
This gets sent as response to JetStreamMsgBySeqPre

Signed-off-by: R.I.Pienaar <rip@devco.net>
2020-05-19 14:15:11 -07:00
Derek Collison
54e2de912f Update observables on purge
Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:15:11 -07:00
R.I.Pienaar
cd8cd3a9eb fix MsgSetInfo json keys
Signed-off-by: R.I.Pienaar <rip@devco.net>
2020-05-19 14:15:11 -07:00
Derek Collison
58d98d42cb Allow notifications for literal subjects.
This allows us to register for notifications on subjects to determine when interest comes and goes.

Signed-off-by: Derek Collison <derek@nats.io>
2020-05-19 14:15:11 -07:00
R.I.Pienaar
423e017724 update readme to point to new CLI and updated guide 2020-05-19 14:15:11 -07:00
R.I.Pienaar
d828daa697 adjust ack event json field names for consistency 2020-05-19 14:15:11 -07:00