3373 Commits

Author SHA1 Message Date
3211773f0f Change version to 1.29.0-dev (#3428) 2020-03-05 15:33:21 -08:00
c12425709d rls: Implementation of lb config parse functionality. (#3379) 2020-03-05 11:10:56 -08:00
759de4dd00 xds: include nonce from the most recent response in new requests (#3420)
Even if the new request is for a new watch.

None and version are reset on new ADS streams.
2020-03-04 17:54:13 -08:00
cfc5fec35a eds: handle child balancer state asynchronously (#3418)
Before this change, in EDS balancer, child balancer's state update is handled synchronously, which includes priority handling. This would cause a deadlock if the child policy sends a state update inline when handling addresses (e.g. when roundrobin handles empty address list).

This change moves the child balancer state handling into a goroutine, to avoid the problem.
2020-03-04 17:53:51 -08:00
6af3d372ce Fixed channelz test flakyness. (#3417) 2020-03-03 13:25:42 -08:00
d3b2eefd21 xds: include port in VirtualHost domain matching (#3413) 2020-03-03 12:53:47 -08:00
c0d37940ad xds: Eliminate calls to reflect.DeepEqual from xds code. (#3414) 2020-03-02 15:49:25 -08:00
c26257da52 rls: Initial implementation of the LRU cache. (#3359)
Contains enough functionality to start working on the users of this
cache: the LB policy, picker and cache expiry goroutine.
2020-03-02 09:22:14 -08:00
2cd9da628a test: record peers by hostname in xds client (#3409) 2020-02-28 14:51:49 -08:00
e139b475f3 xds: support wildcard domain matching for RDS response (#3397) 2020-02-28 09:44:04 -08:00
73cf2d2ad6 xds: LRS send hostname in metadata (#3394)
- The first LRS req will send hostname in metadata
   - With key "PROXYLESS_CLIENT_HOSTNAME"
2020-02-28 09:41:56 -08:00
6f9eea6eae test: include xDS package in test client dependencies (#3407) 2020-02-28 09:40:52 -08:00
a63c5550c9 xds: set no_overprovisioning in request Node (#3402)
Also set the new user-agent fields.
2020-02-27 13:17:48 -08:00
224056d331 xds: add reflection and health service to example server (#3403) 2020-02-27 13:17:17 -08:00
f8ad812d8e internal: update interop test.pb.go (#3405) 2020-02-27 13:17:00 -08:00
7f5ddc8aee xds: improve logging (#3386)
- More logs in xds bootstrap/resolver/cds/eds
  - Bootstrap file content/error
  - Request/response on ADS stream
  - Actions by client/resolver/balancer
  - Content of updates
- Logs prefixed with component name and id
  - `[xds-bootstrap]`
  - `[xds-client <address>]`
  - `[cds-lb <address>]`
  - `[eds-lb <address>]`
2020-02-26 17:50:07 -08:00
c02d9d1775 xds: LRS handle response contains multiple cluster names (#3393)
- The LRS client will find known clusters from the response, and send the loads
   - The LRS client support only one cluster now, will be extended to support multiple
2020-02-26 12:41:45 -08:00
6cd03861bf vet.sh: ensure vet runs on all packages (#3395) 2020-02-26 10:50:27 -08:00
b1a5073a2c Fix vet issues (#3396)
* internal/wrr: fix copying lock

* internal/transport: don't use unkeyed fields

* xds/internal/balancer/edsbalancer: don't use unkeyed fields

* profiling/cmd: don't discard cancel
2020-02-25 10:56:49 -08:00
a43f3ee96c interop: add xds test client and server (#3326)
https://github.com/grpc/grpc/blob/master/doc/xds-test-descriptions.md
2020-02-24 13:45:21 -08:00
5b44288e25 internal: update service config proto (#3389) 2020-02-24 10:44:45 -08:00
7392afe7d2 xds: client should handle new watch requests even if there's no working stream (#3376)
This can happen when the xds ClientConn is in transient failure (a
config error on the server address or creds, or a connection error).
When this happens, the new watches should still be handled, and should
be notified of failure when timeout.
2020-02-18 13:59:21 -08:00
fff75ae40f channelz: log on channelz trace events and trace on channelz relevant logs. (#3329)
channelz: log on channelz trace events and trace on channelz relevant logs. (#3329)
2020-02-14 10:11:26 -08:00
a10661dd0a credentials: deprecate ProtocolInfo.SecurityVersion (#3372)
credentials: deprecate ProtocolInfo.SecurityVersion (#3372)
2020-02-14 10:10:00 -08:00
6b9bf4296e Revert "profiling: add hooks within grpc (#3159)" (#3378)
This reverts commit 83263d17f75d76339f8e2d3b1d2d8364746349f3.
2020-02-14 07:56:46 -08:00
92dd426e0c balancer/base: keep bad SubConns in TransientFailure until Ready (#3366) 2020-02-12 15:41:45 -08:00
d0235e4d6b interceptor: new APIs for chaining server interceptors. (#3336) 2020-02-12 11:11:50 -08:00
95c834a73c xds: resolver handle good update after getting an error (#3374) 2020-02-12 11:11:21 -08:00
83263d17f7 profiling: add hooks within grpc (#3159) 2020-02-12 11:10:44 -08:00
a431daa3bc testutil: add a mutex to tLogger to protect errors map (#3373)
tlogger: Added mutex to protect errors map.
2020-02-12 10:21:58 -08:00
f3111a575a interop: Build grpclb_fallback/client.go only for linux. (#3375) 2020-02-12 00:49:35 -08:00
e38032e927 internal: Move parseTarget function into internal package and export it. (#3368)
This will be used by RLS LB policy to validate targets specified in the
service config.
2020-02-11 17:51:29 -08:00
eb53a9e8ba internal: Update service_config.pb.go (#3365)
To reflect changes made in https://github.com/grpc/grpc-proto/pull/73
2020-02-07 08:37:54 -08:00
d76e57cb09 rls: Implementation of RLS key builders. (#3344) 2020-02-06 20:57:36 -08:00
979f0a2f08 client: clarify units of send/receive message size call options (#3354) 2020-02-06 15:40:53 -08:00
0ab367d24a examples: add client/server to be used for xds examples (#3362) 2020-02-06 14:51:54 -08:00
132187f04c Modified tests to use tlogger. (#3343)
* Modified tests to use tlogger.

* Fail on errors, with error expectations.

* Added expects and MixedCapsed grpclb_config tests

* Moved tlogger to grpctest, moved leakcheck tester to grpctest.go

* Added ExpectErrorN()

* Removed redundant leak checks

* Fixed new test

* Made tlogger globals into tlogger methods

* ErrorsLeft -> EndTest

* Removed some redundant lines

* Fixed error in test and empty map in EndTest
2020-02-06 13:03:20 -08:00
cb03b9f65c balancer/base: consider an empty address list an error (#3361) 2020-02-05 13:16:31 -08:00
597699c0ef grpclb: support explicit fallback signal (#3351) 2020-02-05 10:16:25 -08:00
13535f71d1 rls: Implementation of the adaptive client-side throttler. (#3346) 2020-02-05 03:32:31 -08:00
648cf9b00e advancedtls: use grpc 1.27.0 and small fixes (#3360) 2020-02-04 12:46:21 -08:00
3ae60ebf74 stats: create new MD for outgoing header if no MD is available (#3357) 2020-02-04 08:07:17 -08:00
e0e0cbc795 xds: move "_experimental" to suffix for all balancers (#3356) 2020-02-03 15:39:32 -08:00
77bc3d3983 test/tools: update protoc-gen-go version used by vet.sh (#3355) 2020-02-03 11:06:34 -08:00
1f6cca9665 README: update SupportPackageIsVersion help in FAQ section (#3350) 2020-01-31 10:58:04 -08:00
7621679bee stats: add client side user agent to outgoing header (#3331) 2020-01-31 10:34:44 -08:00
b88d2d7465 protobuf: update protoc-gen-go version and generated code (#3345) 2020-01-30 10:23:21 -08:00
f97821dd2f advancedtls: add end to end tests (#3318) 2020-01-28 14:24:27 -08:00
822723f716 xds: Enable keepalives on the xds client channel. (#3335)
We are using some sane defaults for now:
KeepaliveTime: 5 minutes
KeepaliveTimeout: 20 seconds
PermitWithoutStream: false

This does differ with the defaults used internally, but we are OK with
it, because it is more important to have a reasonable value here than
having one that works for all deployments or even making this
configurable through the bootstrap file.
2020-01-28 13:57:42 -08:00
ca10cab155 Change version to 1.28.0-dev (#3342) 2020-01-28 13:56:49 -08:00