Commit Graph

32 Commits

Author SHA1 Message Date
Antoine Tollenaere ec91b2e05e
xds: Remove temporary environment variable for least request (#8248) 2025-06-05 22:10:48 +05:30
Luwei Ge 41095aeec6
[alts] add keepalive params to the alts handshaker client dial option (#8293)
* add keepalive params to the alts handshaker client dial option

* no need to permit without stream

* address comment

* add env var protection

* go vet
2025-05-07 09:48:59 -07:00
Antoine Tollenaere cb1613cf09
xds: make least request available by default (#8253) 2025-04-16 13:51:02 -07:00
Antoine Tollenaere 25c750934e
ringhash: implement gRFC A76 (#8159) 2025-04-08 15:50:54 +05:30
Arjan Singh Bal a510cf5d4d
xds, pickfirst: Enable additional addresses in xDS, set new pick_first as default (#8126) 2025-02-27 10:22:22 +05:30
Easwar Swaminathan f32168c23b
envconfig: enable xDS client fallback by default (#7949) 2024-12-20 09:49:25 -08:00
Arjan Singh Bal 00b9e140ce
pickfirst: New pick first policy for dualstack (#7498) 2024-10-10 09:33:47 +05:30
Arjan Singh Bal 70f19eecd1
credentials/tls: default GRPC_ENFORCE_ALPN_ENABLED to true (#7535) 2024-09-04 16:54:56 +05:30
Easwar Swaminathan d00dd8f80a
xds: env var protection for xds fallback (#7483) 2024-08-07 14:27:29 -07:00
Arjan Singh Bal 48b6b11b38
credentials/tls: reject connections with ALPN disabled (#7184) 2024-05-21 16:29:40 -07:00
Doug Fawley f591e3b82f
codec: remove option to suppress setting supported compressors in headers (#7203) 2024-05-07 13:12:19 -07:00
Doug Fawley 6bed35367c
envconfig: re-add AdvertiseCompressors temporarily (#6764) 2023-11-06 07:49:48 -08:00
Doug Fawley 8190d883e0
envconfig: remove env vars for on-by-default features (#6749) 2023-10-26 13:08:20 -07:00
Zach Reyes aca07ce97f
xds/internal/xdsclient: Add least request support in xDS (#6517) 2023-08-16 16:12:11 -04:00
Mohan Li 402ba09a4f
pick_first: de-experiment pick first (#6549) 2023-08-14 15:13:01 -07:00
Matthew Stevenson 907bdaa1eb
alts: Read max number of concurrent ALTS handshakes from environment variable. (#6267)
* Read max number of concurrent ALTS handshakes from environment variable.

* Refactor to use new envconfig file.

* Remove impossible if condition in acquire().

* Use weighted semaphore.

* Add e2e test for concurrent ALTS handshakes.

* Separate into client and server semaphores.

* Use TryAcquire instead of Acquire.

* Attempt to fix go.sum error.

* Run go mod tidy compat=1.17.

* Update go.mod for examples subdirectory.

* Run go mod tidy -compat=1.17 on examples subdirectory.

* Update go.mod in subdirectories.

* Update go.mod in security/advancedtls/examples.

* Missed another go.mod update.

* Do not upgrade glog because it requires Golang 1.19.

* Fix glog version in examples/go.sum.

* More glog cleanup.

* Fix glog issue in gcp/observability/go.sum.

* Move ALTS env var into envconfig.go.

* Fix go.mod files.

* Revert go.sum files.

* Revert interop/observability/go.mod change.

* Run go mod tidy -compat=1.17 on examples/.

* Run gofmt.

* Add comment describing test init function.
2023-06-07 18:54:06 -07:00
Doug Fawley 6c2529bca8
xds: support pick_first custom load balancing policy (A62) (#6314) 2023-05-30 09:52:23 -07:00
Doug Fawley 0e5421c1e5
internal/envconfig: add convenience boolFromEnv to improve readability (#5887) 2022-12-22 15:02:43 -08:00
Doug Fawley 4565dd70ae
ringhash: allow overriding max ringhash size via environment variable (#5884) 2022-12-22 08:31:38 -08:00
Ronak Jain 7b817b4d18
client: set grpc-accept-encoding to full list of registered compressors (#5541) 2022-10-11 16:37:02 -07:00
Doug Fawley c25a52b769
config: remove retry disable via environment variable (#4922) 2021-11-09 13:06:38 -08:00
Doug Fawley f1d87c14c2
client: properly disable retry if GRPC_GO_RETRY=off (#4899) 2021-10-26 10:33:08 -07:00
Doug Fawley a6a63177ae
xds: add retry support (#4738) 2021-09-08 10:00:44 -07:00
Timur Naurazbaev aff515dc67
env: check GRPC_GO_IGNORE_TXT_ERRORS env var (#3532) 2020-04-17 08:49:40 -07:00
Doug Fawley b91517cd56
dns: ignore TXT errors unless GRPC_GO_IGNORE_TXT_ERRORS=false (#3299) 2020-01-07 13:08:22 -08:00
Doug Fawley 24b2fb8959
client: remove option to send RPCs before HTTP/2 handshake is completed (#2904) 2019-07-12 13:37:27 -07:00
Jean de Klerk 5878d965b2
transport: remove RequireHandshakeHybrid support (#2529)
This removes RequireHandshakeHybrid support and changes the default behavior
to RequireHandshakeOn. Dial calls will now block and wait for a successful
handshake before proceeding. Users relying on the old hybrid behavior (cmux
users) should consult https://github.com/soheilhy/cmux/issues/64.

Also, several tests have been updated to take this into consideration by
sending settings frames.
2019-02-27 11:04:46 -07:00
Nick Jones eda3b7e3ed client: fix handling of GRPC_GO_REQUIRE_HANDSHAKE=on to not interpret as "hybrid" (#2603)
6cc789b34b made `envconfig.RequireHandshakeOn` the default when unspecified by environment variable, but missed a fallthrough leading to `GRPC_GO_REQUIRE_HANDSHAKE=on` specifying `envconfig.RequireHandshakeHybrid`.  This change adds the missing fallthrough.
2019-01-29 15:00:25 -08:00
Doug Fawley 6cc789b34b
client: make handshake required 'on' by default, not 'hybrid' (#2565) 2019-01-15 09:19:32 -08:00
Jean de Klerk 1b41b79fd1
internal: refactor transport to single retry mechanism (#2461)
Previously, the transport was able to reset via the retry loop,
or via the event closures calling resetTransport. This meant
a very large amount of synchronization was necessary: one
reset meant the other had to not reset; state had to be kept
at the addrconn; and very subtle interactions were hard to
reason about.

This change removes the ability for event closures to directly
reset the transport. Instead, they signal to to the retry
loop about the event, and the retry loop is always the single
place that retries occur.

This also allows us to refactor the address switching logic
into a much simpler for loop inside the retry loop instead of
using addrConn state to keep track of an index.
2018-12-17 13:10:13 -08:00
Doug Fawley f3eb5bc06e
client: add GRPC_GO_REQUIRE_HANDSHAKE options to control connection behavior (#2464)
Possible settings of this environment variable:

- "hybrid" (default; removed after the 1.17 release): do not wait for handshake before considering a connection ready, but wait before considering successful.

- "on" (default after the 1.17 release): wait for handshake before considering a connection ready/successful.

- "off": do not wait for handshake before considering a connection ready/successful.

This setting will be completely removed after the 1.18 release, and "on" will be the only supported behavior.
2018-11-26 15:06:46 -08:00
dfawley 40a879c23a
client: Implement gRFC A6: configurable client-side retry support (#2111) 2018-06-27 16:18:41 -07:00