Giulio Micheloni
4b0eaa4bff
grpc, xds: recovery middleware to return and log error in case of panic
...
1) xds and grpc servers:
1.1) to use recovery middleware with callback that prints stack trace to log
1.2) callback turn the panic into a core.Internal error
2) added unit test for grpc server
2021-08-22 19:06:26 +01:00
R.B. Boyer
097e1645e3
agent: ensure that most agent behavior correctly respects partition configuration ( #10880 )
2021-08-19 15:09:42 -05:00
R.B. Boyer
310e775a8a
state: partition nodes and coordinates in the state store ( #10859 )
...
Additionally:
- partitioned the catalog indexes appropriately for partitioning
- removed a stray reference to a non-existent index named "node.checks"
2021-08-17 13:29:39 -05:00
Daniel Nephin
f497d5ab30
acl: remove many instances of authz == nil
2021-07-30 13:58:35 -04:00
R.B. Boyer
fc9b1a277d
sync changes to oss files made in enterprise ( #10670 )
2021-07-22 13:58:08 -05:00
R.B. Boyer
188e8dc51f
agent/structs: add a bunch more EnterpriseMeta helper functions to help with partitioning ( #10669 )
2021-07-22 13:20:45 -05:00
Daniel Nephin
71b0f0a7a6
structs: remove EnterpriseMeta.GetNamespace
...
I added this recently without realizing that the method already existed and was named
NamespaceOrEmpty. Replace all calls to GetNamespace with NamespaceOrEmpty or NamespaceOrDefault
as appropriate.
2021-03-09 15:17:26 -05:00
Daniel Nephin
1d2d15b1e1
agent: add a test for streaming in the service health endpoint
...
Co-authored-by: Paul Banks <banks@banksco.de>
2021-02-25 14:08:10 -05:00
Daniel Nephin
d1772ae305
structs: rename EnterpriseMeta constructor
...
To match the Go convention.
2021-02-16 14:45:43 -05:00
Daniel Nephin
b9e60c0775
testing: skip slow tests with -short
...
Add a skip condition to all tests slower than 100ms.
This change was made using `gotestsum tool slowest` with data from the
last 3 CI runs of master.
See https://github.com/gotestyourself/gotestsum#finding-and-skipping-slow-tests
With this change:
```
$ time go test -count=1 -short ./agent
ok github.com/hashicorp/consul/agent 0.743s
real 0m4.791s
$ time go test -count=1 -short ./agent/consul
ok github.com/hashicorp/consul/agent/consul 4.229s
real 0m8.769s
```
2020-12-07 13:42:55 -05:00
Daniel Nephin
fb70c8bac2
stream: document that Payload must be immutable
...
If they are sent to EventPublisher.Publish.
Also document that PayloadEvents is expected to come from a subscription and that it is
not immutable.
2020-11-06 13:00:33 -05:00
Daniel Nephin
868cfe1eac
stream: Add HasReadPermission to Payload
...
Required now that filter is a method on PayloadEvents instead of Event
2020-11-05 19:17:18 -05:00
Daniel Nephin
a33c50ef0d
Merge pull request #9073 from hashicorp/dnephin/backport-streaming-namespaces
...
streaming: backport namespace changes
2020-11-05 14:19:10 -05:00
Daniel Nephin
c82f6ef2d8
Merge pull request #9061 from hashicorp/dnephin/event-fields
...
stream: support filtering by namespace
2020-11-05 14:18:35 -05:00
Daniel Nephin
b532e092dc
structs: add a namespace test for CheckServiceNode.CanRead
2020-10-30 15:07:04 -04:00
Daniel Nephin
c42fe5ae43
subscribe: set the request namespace
2020-10-30 14:34:04 -04:00
Daniel Nephin
a5dd2001cf
stream: remove Event.Key
...
Makes Payload a type with FilterByKey so that Payloads can implement
filtering by key. With this approach we don't need to expose a Namespace
field on Event, and we don't need to invest micro formats or require a
bunch of code to be aware of exactly how the key field is encoded.
2020-10-28 16:48:04 -04:00
Daniel Nephin
68342a0cb5
proto: remove Event.Key field
...
The field is never used, and the value is available from the payload.
2020-10-28 16:33:00 -04:00
Daniel Nephin
9a1e845be8
proto: remove Event.Namespace field
...
All events are part of a single Topic, so we don't need this field.
2020-10-28 16:33:00 -04:00
Daniel Nephin
3dfb7c224b
stream: Use a no-op event publisher if streaming is disabled
2020-10-28 13:54:19 -04:00
Daniel Nephin
fb57d9b26a
stream: close the subscription on Unsubscribe
2020-10-22 13:39:27 -04:00
Daniel Nephin
c5d57c9f07
subscribe: add test cases for newEventFromStreamEvent
2020-10-08 18:48:17 -04:00
Daniel Nephin
f185124320
subscribe: Add steps to rpc/subscribe tests
...
To make them easier to follow
2020-10-08 15:38:01 -04:00
Daniel Nephin
b103568e98
Merge pull request #8818 from hashicorp/streaming/add-subscribe-service-batch-events
...
stream: handle batch events as a special case of Event
2020-10-07 21:25:32 -04:00
Daniel Nephin
21c21191f4
structs: add CheckServiceNode.CanRead
...
And use it from the subscribe endpoint.
2020-10-07 18:15:13 -04:00
Daniel Nephin
b27068b72a
stream: Return a single event from a subscription.Next
...
Handle batch events as a single event
2020-10-06 13:18:20 -04:00
Daniel Nephin
f5d11562f2
subscribe: update to use NewSnapshotToFollow event
2020-10-06 12:49:35 -04:00
Daniel Nephin
e3290f5971
Move agent/subscribe -> agent/rpc/subscribe
2020-10-06 12:49:35 -04:00