Easwar Swaminathan
254bccb3bd
idle: decrement active call count for streaming RPCs only when the call completes ( #6610 )
2023-09-11 08:39:06 -07:00
Doug Fawley
81b9df233e
idle: move idleness manager to separate package and ~13s of tests into it ( #6566 )
2023-08-23 12:50:42 -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
Easwar Swaminathan
9b7a947cdc
grpc: support channel idleness ( #6263 )
2023-05-22 12:42:45 -07:00
shaun
e9c1ac35ec
fix: typos ( #2591 )
2019-01-23 09:59:48 -08:00
Doug Fawley
04ea82009c
cleanup: replace "x/net/context" import with "context" ( #2439 )
2018-11-12 13:30:41 -08:00
dfawley
40a879c23a
client: Implement gRFC A6: configurable client-side retry support ( #2111 )
2018-06-27 16:18:41 -07:00
Igor Bernstein
ed2472917f
client: fix interceptors after recent cleanup ( #2046 )
...
This is a partial revert of #2027 which seems to have broken the ability
to inject payload inspecting client interceptors. Specifically it causes
this test to break:
eb0079f598/bigtable/bigtable_test.go (L949-L971)
With:
panic: interface conversion: grpc.ClientStream is *bigtable.requestCountingInterceptor, not *grpc.clientStream [recovered]
panic: interface conversion: grpc.ClientStream is *bigtable.requestCountingInterceptor, not *grpc.clientStream
Which seems to be caused by invoke() expecting a clientStream from a
ClientConn:
7c204fd174/call.go (L74)
2018-05-03 09:00:38 -07:00
Chyroc
f8dbc38bdc
Fix "deprecated" function godoc comments to match standard formatting ( #2027 )
2018-05-02 08:52:49 -07:00
Joshua Humphries
1a70180f35
client: Fix race when using both client-side default CallOptions and per-call CallOptions ( #1948 )
2018-03-29 10:34:29 -07:00
Joshua Humphries
fa28bef939
client: export types implementing CallOptions for access by interceptors ( #1902 )
2018-03-16 15:57:34 -07:00
dfawley
13975c0702
stream: split per-attempt data from clientStream ( #1900 )
...
This is pre-work to implementing retry support. Each retry attempt will have its own csAttempt. The fields left in clientStream are the same across all attempts.
2018-03-12 13:27:54 -07:00
dfawley
d09ec43545
Implement unary functionality using streams ( #1835 )
2018-02-05 12:54:13 -08:00
dfawley
5ba054bf37
encoding: Introduce new method for registering and choosing codecs ( #1813 )
2018-01-23 11:39:40 -08:00
Menghan Li
6913ad5cae
Document that all errors from RPCs are status errors ( #1782 )
2018-01-05 15:37:05 -08:00
Ewan Chou
c998149a22
Avoid copying headers/trailers in unary RPCs unless requested by CallOptions ( #1775 )
...
CPU profile shows that header copy takes a large proportion of CPU usage in a gRPC Call.
If the header is not needed, we don't need to pay the cost.
2018-01-03 09:13:06 -08:00
Daniel Nephin
4e393e0b21
grpc: fix deprecation comments to conform to standard ( #1691 )
2017-12-18 09:23:42 -08:00
Menghan Li
2ef021f78d
New grpclb implementation ( #1558 )
...
The new grpclb supports fallback to backends if remote balancer is unavailable
2017-11-27 11:16:26 -08:00
dfawley
816fa5b06f
Add proper support for 'identity' encoding type ( #1664 )
2017-11-17 09:24:54 -08:00
dfawley
8ff8683602
Implement transparent retries for gRFC A6 ( #1597 )
2017-11-06 13:45:11 -08:00
Zhouyihai Ding
5db344a40a
Introduce new Compressor/Decompressor API ( #1428 )
2017-10-31 10:21:13 -07:00
dfawley
a5986a5c88
Add functions to ClientConn so it satisfies an interface for generated code ( #1599 )
2017-10-20 14:21:31 -07:00
Menghan Li
4bbdf230d7
New implementation of roundrobin and pickfirst ( #1506 )
2017-10-02 09:22:57 -07:00
Menghan Li
8233e124e4
Add new Resolver and Balancer APIs (gRFC L9) ( #1408 )
...
- Add package balancer and resolver.
- Change ClientConn internals to new APIs and adds a wrapper for v1 balancer.
2017-08-31 10:59:09 -07:00
ZhouyihaiDing
01089b2972
Remove buf copy when the compressor exist ( #1427 )
2017-08-25 12:26:38 -07:00
Jack Li
059280c96e
Set peer before sending request ( #1423 )
2017-08-07 10:39:34 -07:00
Jan Tattermusch
ddbf6c46a6
autofix license notice
2017-06-08 14:42:19 +02:00
MakMukhi
6fecf2831a
Reopening: Server shouldn't Fatalf in case it fails to encode. ( #1276 )
...
* Server shouldn't Fatalf in case it fails to encode.
2017-06-02 12:32:37 -07:00
MakMukhi
843116533a
Revert "Server shouldn't Fatalf in case it fails to encode. ( #1251 )" ( #1274 )
...
This reverts commit d5bc85c1e9
.
2017-06-01 12:34:28 -07:00
MakMukhi
d5bc85c1e9
Server shouldn't Fatalf in case it fails to encode. ( #1251 )
...
* Server shouldn't Fatalf in case it fails to encode.
* golint
* post-review update
2017-06-01 11:57:45 -07:00
Yuxuan Li
27ae1472a3
remove some todo comments
2017-05-19 14:55:35 -07:00
Yuxuan Li
d19bbe846e
change max message size functions name
2017-05-19 11:08:40 -07:00
Yuxuan Li
35d77ea991
merge master, resolve conflicts
2017-05-15 13:54:22 -07:00
Yuxuan Li
bdf9a640e4
add timeout test, add check or pointer filed in callOption, fix minor issues
2017-05-15 13:51:11 -07:00
MakMukhi
88a73d35c9
Adding dial options for PerRPCCredentials ( #1225 )
...
* Adding dial options for PerRPCCredentials
* Added tests for PerRPCCredentials
* Post-review updates
* post-review updates
2017-05-11 11:07:38 -07:00
Menghan Li
17760cfd5b
Calling handleRPC with context derived from the original ( #1227 )
...
* Calling handleRPC with different context derived from the original context
* change comment for tagRPC and stats fields
2017-05-10 17:54:49 -07:00
Yuxuan Li
d9265441de
remove unessary nil in return statement
2017-05-08 00:17:01 +00:00
lyuxuan
3ea287058c
Merge branch 'master' into service_config_pr
2017-05-07 16:49:32 -07:00
kirk
0914b46180
don't add defer func if stats handler is nil ( #1214 )
2017-05-02 10:16:45 -07:00
Menghan Li
277e90a432
Client load report for grpclb. ( #1200 )
2017-04-27 10:43:38 -07:00
Yuxuan Li
9c5f260e67
make max size a pointer type and initialize function a CallOption
2017-04-26 15:50:58 -07:00
Yuxuan Li
983d8372ea
update the merge of client api and sc
2017-04-21 16:18:59 -07:00
Yuxuan Li
cb02ab4d25
change error message from InvalidArgument to ResourceExhausted
2017-04-13 16:51:56 -07:00
Yuxuan Li
fa2968617c
Merge branch 'master' into service_config_pr
2017-04-06 14:12:34 -07:00
Yuxuan Li
6f8b55318a
fix the testMaxMsgSizeServerAPI failure
2017-04-06 14:08:04 -07:00
dfawley
1d27587e10
Change status package to deal with concrete types instead of interfaces ( #1171 )
2017-04-06 11:41:07 -07:00
lyuxuan
f02290b023
Merge branch 'master' into service_config_pr
2017-04-05 11:15:55 -07:00
dfawley
b507112439
Add status package for reporting gRPC status and errors ( #1156 )
...
When an error implemented by the status package is returned from a service
handler, the server will transmit a rich status message in the
"grpc-status-details-bin" trailing metadata field if any detailed data is
attached to the error. Client-side, we will decode them if present in the
server's response and return them to the user code performing the RPC.
This is backward compatible with the existing errors supported by the grpc
package. However, the grpc.Errorf, grpc.Code and grpc.ErrorDesc functions for
managing errors are now deprecated; status.Errorf and status.Status type
asserions should be used instead.
2017-04-05 10:35:40 -07:00
Yuxuan Li
50d4175072
Add client and service side apis for limiting the send/recv msg size. Update MethodConfig struct
2017-04-03 15:03:24 -07:00
Mahak Mukhi
a94b0948a3
Client should have a check on maximum size of received message size.
2017-03-09 16:58:23 -08:00