Commit Graph

103 Commits

Author SHA1 Message Date
大可 d655f404da
internal/transport: fix severity of log when receiving a GOAWAY with error code ENHANCE_YOUR_CALM (#5935) 2023-02-08 16:36:09 -05:00
Mikhail Mazurskiy 379a2f676c
*: add missing colon to errorf messages to improve readability (#5911) 2023-01-17 16:11:47 -08:00
Arvind Bright 6de8f50f91
transport: drain client transport when streamID approaches maxStreamID (#5889)
Fixes https://github.com/grpc/grpc-go/issues/5600
2023-01-11 12:58:00 -08:00
Arvind Bright 07ac97c355
transport: simplify httpClient by moving onGoAway func to onClose (#5885) 2022-12-21 15:44:31 -06:00
Zach Reyes a9709c3f8c
Added logs for reasons causing connection and transport close (#5840) 2022-12-08 19:44:23 -05:00
wby 0238b6e1ce
transport: new stream with actual server name (#5748) 2022-11-18 08:57:37 -08:00
Doug Fawley 9127159caf
client: synchronously verify server preface in newClientTransport (#5731) 2022-10-20 09:29:17 -07:00
Doug Fawley 778860e606
testing: update Go to 1.19 (#5717) 2022-10-17 15:04:34 -07: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 12db695f16
grpc: restrict status codes from control plane (gRFC A54) (#5653) 2022-10-04 15:13:23 -07:00
Zach Reyes b1d7f56b81
transport: Fix deadlock in transport caused by GOAWAY race with new stream creation (#5652)
* transport: Fix deadlock in transport caused by GOAWAY race with new stream creation
2022-09-21 14:35:08 -04:00
feihu-stripe 641dc8710c
transport: add peer information to http2Server and http2Client context (#5589) 2022-08-24 09:46:22 -07:00
Zach Reyes a094a1095c
Fix race between activeStreams and bdp window size (#5494)
* Fix race between activeStreams and bdp window size
2022-07-13 11:37:09 -04:00
Lidi Zheng ea86bf7497
stats: add support for multiple stats handlers in a single client or server (#5347) 2022-06-03 09:15:50 -07:00
Doug Fawley 799605c228
client: fix potential panic during RPC retries (#5323) 2022-05-04 10:06:12 -07:00
Easwar Swaminathan a73725f42d
channelz: include channelz identifier in logs (#5192) 2022-02-23 07:30:06 -08:00
Menghan Li 40916aa021
transport: better error message when per-RPC creds fail (#5033) 2021-12-08 10:05:59 -08:00
Ryan Leung 14ebd917f2
lint: fix some unused parameter issues (#4956) 2021-11-09 11:18:21 -08:00
Anirudh Ramachandra bac0a7e47f
transport: pass handshake info with attributes to custom dialers (#4938) 2021-11-08 14:57:42 -08:00
Easwar Swaminathan aaff9e7ab9
grpc: better RFC 3986 compliant target parsing (#4817) 2021-10-14 14:54:02 -07:00
Doug Fawley 75f1d4b986
transport: call stats handler for trailers before closeStream (#4816) 2021-09-28 12:20:57 -07:00
Doug Fawley 11437f66f2
test: add option to make httpServer wait for END_STREAM; fix RetryStats race (#4811) 2021-09-24 15:29:25 -07:00
Doug Fawley d53469981f
transport: fix transparent retries when per-RPC credentials are in use (#4785) 2021-09-21 10:39:59 -07:00
Menghan Li 0d6854ab5e
transport: fix race accessing s.recvCompress (#4641) 2021-08-03 14:17:02 -07:00
Doug Fawley 1ddab33869
client: fix detection of whether IO was performed in NewStream (#4611)
For transparent retry.

Also allow non-WFR RPCs to retry indefinitely on errors that resulted in no I/O; the spec used to forbid it at one point during development, but it no longer does.
2021-07-23 10:37:18 -07:00
John Howard 0103ea2d6c
client: improve GOAWAY debug messages (#4587) 2021-07-14 13:59:50 -07:00
James Protzman ba41bbac22
transport: validate http 200 status for responses (#4474) 2021-07-14 10:54:58 -07:00
Vicent Martí 83f9def5fe
internal/transport: do not mask ConnectionError (#4561) 2021-06-28 09:51:21 -07:00
Zach Reyes b9270c3a7f
client: add deadline for TransportCredentials handshaker (#4559)
* Add deadline on connection for TransportCredentials handshake
2021-06-23 16:36:24 -04:00
Doug Fawley 84d0920b59
transport: unblock read throttling when controlbuf exits (#4447) 2021-05-19 11:05:26 -07:00
Doug Fawley 23a83dd097
transport: various simplifications noticed during #4447 (#4455) 2021-05-18 15:26:51 -07:00
James Protzman a95a5c3bac
transport: remove decodeState from client to reduce allocations (#3313) 2021-05-12 08:49:07 -07:00
apolcyn 9572fd6fae
client: include details about GOAWAYs in status messages (#4316) 2021-04-23 17:26:26 -07:00
Doug Fawley 87eb5b7502
credentials/google: remove unnecessary dependency on xds protos (#4339) 2021-04-13 16:19:17 -07:00
apolcyn c229922995
client: propagate connection error causes to RPC statuses (#4311) 2021-04-13 13:06:05 -07:00
Doug Fawley 60843b1066
xds: add support for HTTP filters (gRFC A39) (#4206) 2021-02-25 14:04:15 -08:00
Edmond 39a500abb9
support unix-abstract schema (#4079) 2020-12-22 08:56:49 -08:00
Garrett Gutierrez c456688b18
client: fix "unix" scheme handling for some corner cases (#4021) 2020-11-30 10:04:47 -08:00
Menghan Li 78864797b8
balancer: set RPC metadata in address attributes, instead of Metadata field (#4041)
This metadata will be sent with all RPCs on the created SubConn
2020-11-18 17:12:51 -08:00
yihuaz aeb04798c5
credentials: fix PerRPCCredentials w/RequireTransportSecurity and security levels (#3995) 2020-11-09 15:33:53 -08:00
Nick Jones 89faf1c3e8
internal/transport: fix a bug causing -bin metadata to be incorrectly encoded. (#3985)
Most interfaces for adding metadata to a context downcase keys, except metadata.AppendToOutgoingContext (presumably for performance reasons).  Documentation for metadata.AppendToOutgoingContext, referring to that of metadata.Pairs, states that metadata keys are downcased.

The bug is manifest if you use metadata.AppendToOutgoingContext to add metadata with a non-downcased `-Bin` suffix.  http2Client will not encode such metadata, as encodeMetadataHeader just performs a lower suffix check.
2020-10-29 13:52:55 -07:00
Garrett Gutierrez 4be647f7f6
internal/resolver/unix: Implemented unix resolver. (#3890) 2020-10-16 11:52:54 -07:00
Sorah Fukumori 9a3c02f983
http2_client: fix reader segfault on PROTOCOL_ERRORs (#3926) 2020-10-06 14:21:57 -07:00
Tzu-Chiao Yeh bf9584e105
internal/transport: handle h2 errcode on header decoding (#3872)
Handles HTTP2 error code when malformed request/response header appears.
Fixes: #3819
2020-09-17 10:34:27 -07:00
Menghan Li 266c7b6f82
xdsrouting: add fake headers (#3748) 2020-07-20 13:40:03 -07:00
Garrett Gutierrez 506b773066
Implemented component logging (#3617) 2020-06-26 12:04:47 -07:00
Doug Fawley 3b63c2b110
retry: re-enable retrying on non-IO transport errors (#3691) 2020-06-16 10:03:59 -07:00
Bryan Boreham 4709b05f2c
transport: move append of header and data down to http2 write loop to save garbage (#3568) 2020-05-21 14:21:54 -07:00
yihuaz 9eb3e7ddf3
credentials: local creds implementation (#3517)
Local credentials should be used in either a UDS and local TCP connection. The former will be associated with the security level PrigvacyAndIntegrity while the latter is associated with NoSecurity. Local credentials should be used instead of WithInsecure for localhost connections.
2020-05-20 15:43:38 -07:00
Easwar Swaminathan 6a3c03883d
Pass address attributes from balancer to creds handshaker. (#3548) 2020-04-23 11:03:42 -07:00