273 Commits

Author SHA1 Message Date
947e436ef4 return non temporary connection error if dialer returns non temprary errors 2016-11-09 17:25:46 -08:00
2d5f9a12ea grpclb: Support DropRequest 2016-10-18 18:08:32 -07:00
8930da46d0 grpclb: work with LoadBalanceToken 2016-10-13 16:54:33 -07:00
1a79a7e346 Use creds.Clone in balancer.start 2016-09-27 17:36:19 -07:00
f02984b7c6 Basic support of grpclb 2016-09-19 15:11:57 -07:00
a45515c6ca Log grpc.Address objects with %v, not %q
Structs should use %v; %q only makes sense for strings, chars, etc.
2016-09-12 15:09:10 -04:00
74f7afb1f9 Move balancer initialization into a goroutine 2016-09-08 15:13:50 -07:00
a00cbfeab5 Overwrite authority if creds servername is specified 2016-09-06 11:23:30 -07:00
61f62e0da6 Merge branch 'master' of https://github.com/grpc/grpc-go 2016-08-26 13:51:46 -07:00
1e47e17230 Support client side interceptor 2016-08-26 13:50:38 -07:00
dd5645bebf Avoid goroutine leak in clientconn
Prior to this change, it was possible for `DialContext` to return
`(nil, err)` without properly closing the `ClientConn`, resulting in an
unavoidable leak of the `resetAddrConn` goroutine.
2016-08-25 17:02:43 -04:00
6cc4c5785d refactor to simplify 2016-08-24 12:56:16 -07:00
9dbd95fe38 make the test failure consistent 2016-08-24 11:02:18 -07:00
7873a050d4 fix the test 2016-08-24 10:46:06 -07:00
7eae19acb7 fix the issue 2016-08-23 19:23:04 -07:00
60c350b0e9 Detach user-passed context (via DialContext(...)) with the context of ClientConn 2016-08-23 18:18:18 -07:00
f3ac95e6cd Check if cc.conns == nil before reading cc.conns 2016-08-18 16:43:58 -07:00
8a81ddda27 Merge pull request #831 from spencerkimball/spencerkimball/dial-with-context
Implement DialContext to afford caller option of managing cancelation
2016-08-17 11:18:27 -07:00
c72b08a774 Change errors returned by ac.wait() 2016-08-16 16:56:16 -07:00
b38541aeb0 Implement DialContext to afford caller option of managing cancelation 2016-08-16 16:57:59 -04:00
a9c8aebe90 Make non-failfast RPC get new transport instead of waiting 2016-08-12 13:03:09 -07:00
5e62f80ba8 resetTransport: log all transient errors when they occur
Previously, cancellation of the context would cause these transient
errors to be swallowed since the function would return before the
log line was reached.
2016-08-10 12:56:03 -04:00
a4587cd3f0 Fix review comments 2016-08-02 21:07:00 -07:00
fa5748afd3 Change error returned for transport not found 2016-08-01 16:01:16 -07:00
f6b46c1787 Fix errors after rebasing 2016-08-01 16:01:10 -07:00
d7d831d95e Do not create RoundRobin if balancer is not specified 2016-08-01 15:55:08 -07:00
7c6eabc607 Make Dial() return original error 2016-08-01 15:55:08 -07:00
1d0bea7943 Add addrConn tearDownError 2016-08-01 15:55:08 -07:00
e9e6ae6215 Make Dial() withblock error on bad certificates 2016-08-01 15:55:08 -07:00
5c7ed938f9 credentials: plumb cancellation into ClientHandshake
This is a minor breaking change to `TransportCredentials`, however
it should not be a problem in practice as not many users are using
custom implementations. In particular, users of `NewTLS` will not
be affected.

This change also replaces the earlier `Timeout` and `Cancel` fields
with a `context.Context`, which is plumbed all the way down from
`grpc.Dial`, laying the ground work for a user-provided context.

Also, support for Go 1.7 is added.
2016-08-01 16:29:56 -04:00
21c5a43e47 fix a race condition causing http2Client.controller leaking 2016-08-01 11:51:20 -07:00
cbae5b1f01 Replace cc.newAddrConn with cc.resetAddrConn
When goaway is received by client, a new ac should replace the old ac.
Without this change, ac is removed first and a new one is added later,
ac.tearDown() and cc.newAddrConn are two functions called consecutively,
So there's a small chance that getTransport is called in between and
misses the new ac. After this change, the value in map conns is replaced
directly, and this issue should be resolved.
2016-07-29 16:03:53 -07:00
a09c6888cc fix another data race along with goaway 2016-07-28 19:47:38 -07:00
f255f72742 Merge pull request #784 from iamqizhao/race-fix
Fix a couple of races when goaway lives with connection shutdown.
2016-07-28 15:40:27 -07:00
096e703537 WithDialer doesn't support cancellation
This maintains cancellation for the default dialer, but external users
will have to opt in via a future API.
2016-07-28 17:00:23 -04:00
b128e7465a merge the conflict 2016-07-28 13:17:23 -07:00
cd4ca4d808 Tune transport Monitor, modify the test and add more comments 2016-07-28 11:07:42 -07:00
1faf2ca61b fix the race on t.state 2016-07-27 19:46:34 -07:00
63fcabeec5 some polish 2016-07-27 17:41:43 -07:00
110450d45e fix races introduce by goaway 2016-07-27 17:27:10 -07:00
61f3f61ef0 cancel outgoing net.Dial when ClientConn is closed 2016-07-27 17:34:40 -04:00
2342e38669 test,transport: simplify 2016-07-27 17:20:55 -04:00
f1e4d3b180 allow multiple GoAways and retrying on illegal streams 2016-07-25 16:35:32 -07:00
046e606dc5 clean up 2016-07-21 18:12:01 -07:00
9ad4c58355 Make it work for streaming 2016-07-21 16:19:34 -07:00
873cc272c2 support goaway 2016-07-20 18:48:49 -07:00
d2e79470cc client goaway support 2016-07-19 16:29:13 -07:00
f492622da4 rebase 2016-07-06 14:16:27 -07:00
ebd9633b55 remove duplicate balancer field 2016-07-05 14:52:25 -04:00
be59d023f2 refactor error handling a bit 2016-06-29 15:21:44 -07:00