Commit Graph

331 Commits

Author SHA1 Message Date
Sercan Değirmenci d7334c477d fix enabling compression by trimming whitespaces in accept encoding header (#6952) 2024-03-04 14:46:35 -08:00
Jaewan Park d076e14b48 rpc_util: Fix RecvBufferPool deactivation issues (#6766) 2024-03-04 14:46:35 -08:00
Chris K 03e76b3d2a
grpc: add ability to compile with or without tracing (#6954)
golang.org/x/net/trace is the only dependency of gRPC Go that depends --
through html/template and text/template -- on reflect's MethodByName.
Binaries with MethodByName are not eligible for Go dead code
elimination.

As of protobuf v1.32.0 combined with Go 1.22, Go protobufs support
compilation with dead code elimination. This commit allows users of gRPC
Go to also make use of dead code elimination for smaller binary sizes.

Signed-off-by: Chris Koch <chrisko@google.com>
2024-02-02 13:49:23 -08:00
Doug Fawley 61eab37838
server: block GracefulStop on method handlers and make blocking optional for Stop (#6922) 2024-01-18 08:50:54 -08:00
Zach Reyes ddd377f198
xds/server: fix RDS handling for non-inline route configs (#6915) 2024-01-16 19:03:18 -05:00
Easwar Swaminathan 45624f0e10
grpc: eliminate panics in server worker implementation (#6856) 2023-12-15 09:47:32 -08:00
Easwar Swaminathan a03c7f1faa
client: always enable TCP keepalives with OS defaults (#6834) 2023-12-07 14:04:31 -08:00
Jayden Teoh f1a1fcd042
grpc: disable and document overrides of OS default TCP keepalive by Go (#6672)
Co-authored-by: Arvind Bright <arvind.bright100@gmail.com>
2023-11-07 13:49:01 -08:00
Fabian Holler 70f1a4045d
grpc: Wait until resources finish cleaning up in Stop() and GracefulStop() (#6489) 2023-10-31 13:12:43 -04:00
Zach Reyes 8cb98464e5
grpc: Add a pointer of server to ctx passed into stats handler (#6750) 2023-10-26 16:30:26 -04:00
Zach Reyes c76d75f4f9
grpc: Move some stats handler calls to gRPC layer, and add local address to peer.Peer (#6716) 2023-10-25 18:01:05 -04:00
Easwar Swaminathan ddb026e8a8
experimental: add package and move recv buffer pool APIs into it (#6692) 2023-10-12 18:29:29 -07:00
Easwar Swaminathan 2cf5619c4d
grpc: add a warning for unsupported codec (#6658) 2023-10-12 18:22:24 -07:00
Doug Fawley f2180b4d54
server: prohibit more than MaxConcurrentStreams handlers from running at once (#6703) 2023-10-10 10:51:45 -07:00
Zach Reyes 8eb4ac4c15
grpc: Change server stream context handling (#6598) 2023-09-01 15:00:56 -04:00
Doug Fawley e5d8eac59b
test: improve and speed up channelz keepalive test (#6556) 2023-08-16 08:29:13 -07:00
Doug Fawley fbff2abb0f
*: update `interface{}` to `any` and `go.mod` version to `go 1.19` (#6544) 2023-08-14 09:04:46 -07:00
Sergey Matyukevich 9bb44fbf2e
transport: use a sync.Pool to share per-connection write buffer (#6309) 2023-07-20 15:28:06 -07:00
Jaewan Park 1634254ac6
rpc_util: Reuse memory buffer for receiving message (#5862) 2023-06-27 08:58:10 -07:00
Tobo Atchou 56b33d5cd0
server/transport: send appropriate debug_data in GOAWAY frames (#6220) 2023-05-03 09:58:06 -07:00
Alexey Ivanov 6eabd7e183
server: use least-requests loadbalancer for workers (#6004) 2023-04-11 11:34:42 -07:00
Zach Reyes 55d8783479
gcp/observability: Link logs and traces by logging Trace and Span IDs (#6056) 2023-03-09 13:56:23 -05:00
Zach Reyes f31168468f
stats/opencensus: New uncompressed metrics and align with tracing spec (#6051) 2023-03-03 17:21:40 -05:00
Zach Reyes cc320bf820
grpc: Log server trailers before writing status (#6076) 2023-03-03 17:20:54 -05:00
Ronak Jain 0954097276
server: expose API to set send compressor (#5744)
Fixes https://github.com/grpc/grpc-go/issues/5792
2023-01-31 13:27:34 -08:00
Zach Reyes 6a707eb1bb
client: add an option to disable global dial options (#5990) 2023-01-27 17:06:29 -05:00
Mikhail Mazurskiy 379a2f676c
*: add missing colon to errorf messages to improve readability (#5911) 2023-01-17 16:11:47 -08:00
Sean Barag 2f413c4548
transport/http2: use HTTP 400 for bad requests instead of 500 (#5804) 2022-12-13 11:31:23 -08:00
Zach Reyes a9709c3f8c
Added logs for reasons causing connection and transport close (#5840) 2022-12-08 19:44:23 -05:00
Theodore Salvo 0fe49e823f
grpc: Improve documentation of read/write buffer size server and dial options (#5800)
Fixes https://github.com/grpc/grpc-go/issues/5798
2022-11-28 10:17:00 -08:00
Yimin Chen adfb9155e4
server: fix ChainUnaryInterceptor and ChainStreamInterceptor to allow retrying handlers (#5666) 2022-11-22 12:58:04 -08:00
Zach Reyes f52b910b10
o11y: Fixed o11y bug (#5720) 2022-10-14 14:48:39 -04:00
Zach Reyes 5fc798be17
Add binary logger option for client and server (#5675)
* Add binary logger option for client and server
2022-10-06 13:36:05 -04:00
Easwar Swaminathan aee9f0ed17
orca: server side custom metrics implementation (#5531) 2022-09-01 15:58:29 -07:00
Doug Fawley 02f1a7ac92
grpc: prevent a nil stats handler from causing a panic (#5543) 2022-07-29 10:45:21 -07:00
Juraci Paixão Kröhling 6dd40ad6e6
Change the log-level when a new ServerTransport cannot be created (#5524) 2022-07-19 15:18:52 -07: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
Lidi Zheng 13b378bc45
internal: add global DialOptions and ServerOptions for all clients and servers (#5352) 2022-06-02 16:17:01 -07:00
Doug Fawley 9711b148c4
server: clarify documentation around setting and sending headers and ServerStream errors (#5302) 2022-04-08 13:11:40 -07:00
Easwar Swaminathan a73725f42d
channelz: include channelz identifier in logs (#5192) 2022-02-23 07:30:06 -08:00
Menghan Li 61a6a06b88
server: handle context errors returned by service handler (#5156) 2022-01-26 11:02:23 -08:00
Doug Fawley f068a13ef0
server: add missing conn.Close if the connection dies before reading the HTTP/2 preface (#4837) 2021-10-04 11:22:00 -07:00
Evan Jones e6246c22eb
server: optimize chain interceptors (-1 allocation, -10% time/call) (#4746) 2021-09-22 13:30:27 -07:00
Zach Reyes 606403ded2
transport: fix log spam from Server Authentication Handshake errors (#4798)
* transport: fix log spam from Server Authentication Handshake errors
2021-09-21 19:33:18 -04:00
Zach Reyes c361e9ea16
Move Server Credentials Handshake to transport (#4692)
* Move Server Credentials Handshake to transport
2021-08-23 19:39:14 -04:00
吴亲库里 52cea24534
server: fix net.conn closed twice (#4663) 2021-08-18 13:31:22 -07:00
Menghan Li c052940bcd
server: fix leaked net.Conn (#4633)
This happens when NewServerTransport() returns nil, nil. The rawConn is
closed when the transport is closed, which will never happen in this
case (since the returned transport is nil).
2021-08-02 13:05:02 -07:00
Aliaksandr Mianzhynski 9b2fa9f8d3
server: improve chained interceptors performance (#4524) 2021-06-24 22:11:47 -07:00
Iskandarov Lev 4faa31f0a5
stats: add stream info inside stats.Begin (#4533) 2021-06-18 13:21:07 -07:00
Easwar Swaminathan 174b1c28af
internal/transport: skip log on EOF when reading client preface (#4458) 2021-06-02 16:47:35 -07:00