139 Commits

Author SHA1 Message Date
277e90a432 Client load report for grpclb. (#1200) 2017-04-27 10:43:38 -07:00
ecbc34aaca move server defaults, delete defer cancel() in stream.go 2017-04-26 17:39:57 -07:00
eaa9ccb053 minor comment change 2017-04-26 16:23:24 -07:00
9c5f260e67 make max size a pointer type and initialize function a CallOption 2017-04-26 15:50:58 -07:00
983d8372ea update the merge of client api and sc 2017-04-21 16:18:59 -07:00
bab6b617b7 merge master 2017-04-21 16:07:34 -07:00
955c867061 Support proxy with dialer (#1098)
With this change, the default dialer checks environment variables to see if proxy is needed. If so, it dials to the proxy and does an HTTP CONNECT handshake.
2017-04-17 16:08:50 -07:00
cb02ab4d25 change error message from InvalidArgument to ResourceExhausted 2017-04-13 16:51:56 -07:00
8788b75675 merge master resolve conflicts 2017-04-13 16:28:15 -07:00
0e8b58d22f use proto.Buffer API for protobuf codec and cache proto.Buffer structs (#1010)
* use a global sharded pool of proto.Buffer caches in protoCodec

* fix goimports

* make global buffer pool index counter atomic

* hack to remove alloc in encode_len_struct

* remove extra slice alloc in proto codec marshal

* replce magic number for proto size field length with constant

* replace custom cache with sync.Pool

* remove 1 line functions in codec.go and add protoCodec microbenchmarks

* add concurrent usage test for protoCodec

* fix golint.gofmt,goimport checks

* fix issues in codec.go and codec_test.go

* use go parallel benchmark helpers

* replace proto.Codec with a guess of size needed

* update Fatalf -> Errorf in tests

* wrap proto.Buffer along with cached last size into larger struct for pool use

* make wrapped proto buffer only a literal

* fix style and imports

* move b.Run into inner function

* reverse micro benchmark op order to unmarshal-marshal and fix benchmark setup-in-test bug

* add test for large message

* remove use of defer in codec.marshal

* revert recent changes to codec bencmarks

* move sub-benchmarks into >= go-1.7 only file

* add commentfor marshaler and tweak benchmark subtests for easier usage

* move build tag for go1.7 on benchmarks to inside file

* move build tag to top of file

* comment Codec, embed proto.Buffer into cached struct and add an int32 cap
2017-04-12 20:35:59 -07:00
fa2968617c Merge branch 'master' into service_config_pr 2017-04-06 14:12:34 -07:00
6f8b55318a fix the testMaxMsgSizeServerAPI failure 2017-04-06 14:08:04 -07:00
1d27587e10 Change status package to deal with concrete types instead of interfaces (#1171) 2017-04-06 11:41:07 -07:00
f02290b023 Merge branch 'master' into service_config_pr 2017-04-05 11:15:55 -07:00
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
f45e6e3b30 Bug fix(Issue#1141): Check if peer is nil before trying to derefer it. (#1143) 2017-04-04 15:08:14 -07:00
13b5f120b0 merge master 2017-04-03 15:20:13 -07:00
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
14a6be430b Add grpc.Version string and use it in the UA (#1144) 2017-03-24 11:29:02 -07:00
9871e09f09 Use codes.Code.String() rather than logging integers
This produces better human-readable error messages.
2017-02-27 14:13:02 -05:00
6810d34606 fix issue #1056 and #1050 2017-02-13 17:37:53 -08:00
dfb494c6e5 post review update 2017-02-08 14:15:59 -08:00
66de296a37 post review update 2017-02-07 14:46:28 -08:00
794873f0a2 Added calloption to retrieve peer information 2017-02-07 10:41:32 -08:00
6e0ace39fe Change max message size fields from uint64 to uint32. 2017-01-26 14:43:08 -08:00
325a0c2061 Update comment. 2017-01-09 12:59:10 -08:00
09aecb094e Add the initial service config support (#1009)
* Add the initial service config support

* start scWatcher later

* remove timeoutCh

* address the comments

* deal with dial timeout

* defer cancel for the newly created context for correct lifetime management

* fix the defer order

* added other 2 missing cancels
2016-12-19 16:31:00 -08:00
3f9a96ea71 move inPayload.RecvTime to after unmarshal 2016-11-07 16:29:25 -08:00
5938492b60 fix comments 2016-11-07 15:16:52 -08:00
a4edc462a2 renaming 2016-11-07 15:16:52 -08:00
c698588285 Renaming types and variables 2016-11-07 15:16:52 -08:00
1054f1c42b add payload with original type to payload stats 2016-11-07 15:16:52 -08:00
17ee5a3637 Add package stats, and export stats on server side. 2016-11-07 15:16:52 -08:00
727a60e4d1 update server reflection code to comply with the change to the grpc generator 2016-10-21 18:06:55 -07:00
5e734ab23e Avoid creating transport stream error outside of transport 2016-09-02 11:57:42 -07:00
fc500c24f6 fix go vet error 2016-07-29 18:08:00 -07:00
b13920a0cf add the mem alloc guard on server 2016-07-29 16:19:20 -07:00
8c908a8c1d Reject over-sized requests on server 2016-07-26 16:44:49 -07:00
ffdfb592e8 Fix type assertion error after rebase 2016-07-08 10:35:38 -07:00
3802318f46 Make Errorf return pointer to rpcError 2016-07-08 10:28:36 -07:00
be59d023f2 refactor error handling a bit 2016-06-29 15:21:44 -07:00
213a20c4fe bug fix, typo fix and slight error refactoring 2016-06-28 16:08:19 -07:00
01ef81a4d9 minor fix including removal of debugging logs, error code fix, etc. 2016-06-27 15:30:20 -07:00
3e71fb360d Support fail-fast mode and make it the default 2016-06-27 14:36:59 -07:00
cf04b299b7 Change SupportPackageIsVersion variable 2016-06-10 11:48:20 -07:00
487ada6517 Fixed typos in docstrings 2016-06-07 12:01:07 +01:00
e0f9f26e85 remove the checking of empty string for recvCompress 2016-05-11 11:01:26 -07:00
b506f13d5b change the error code when the required decompressor is not installed 2016-05-11 10:46:23 -07:00
113bf2f219 Change some compression related error code 2016-05-10 13:54:10 -07:00
61e92eacc3 Phase 1 to add the server interceptor 2016-04-18 16:18:34 -07:00