2921 Commits

Author SHA1 Message Date
97da9e087c internal: remove transportMonitor, replace with callbacks (#2219) 2018-07-31 14:10:13 -07:00
fb6867e42b Change version to 1.15.0-dev (#2247) 2018-07-31 10:11:35 -07:00
8fbeaf87a6 interop: implement special_status_message interop test (#2241)
fixes #2240
2018-07-30 13:33:50 -07:00
efcc5364b8 internal/grpcsync: introduce package for synchronization (#2244) 2018-07-30 10:08:08 -07:00
804c2a9051 remove 1.6 support for channelz (#2242)
ChannelZ is a debugging feature in grpc. It has not had appengine support; this commit
removes its support for 1.6, too. This change is because in a recent sys/unix commit
1.6 support was broken.
2018-07-26 14:24:04 -07:00
339b6cb107 transport: eliminate StreamError; use status errors instead (#2239) 2018-07-26 10:30:58 -07:00
c03697249e transport: replace ClientTransport with *http2Client for internal usage (#2238) 2018-07-26 10:19:45 -07:00
fe131d6f02 disable go1.6 travis tests (#2237)
This can be reverted when https://github.com/golang/go/issues/26576 is resolved.
2018-07-25 13:14:15 -07:00
8e36593ad9 go generate: update proto files (#2236) 2018-07-25 11:40:12 -07:00
980d9e0348 ClientConn: add Target() returning target string (#2233) 2018-07-23 16:19:11 -07:00
445634bdcc client: define dialOptions as interfaces instead of functions (#2230) 2018-07-19 17:33:42 -07:00
4f4261e767 interop: loosen restrictions on creds per test in interop client (#2231) 2018-07-19 10:53:08 -07:00
5562178a52 Convert io.ErrUnexpectedEOF to a codes.Internal-marked status in toRPCerr. (#2228)
This is consistent with how io.ErrUnexpectedEOF is handled in a bunch of
other places (e.g. stream.go, server.go), and signals to
application-level code that the error is retryable.
2018-07-18 14:09:07 -07:00
b534d2d20e internal/transport: remove unnecessary ServerTransport method (#2224) 2018-07-17 08:26:04 -07:00
a7d6032db4 internal/transport_test.go: prevent leaking context (#2227) 2018-07-16 18:48:37 -07:00
7273294e1a internal/syscall: add package description (#2226) 2018-07-16 16:32:09 -07:00
d8ecae53ed transport.go: minor typo fix (#2225) 2018-07-16 15:44:40 -07:00
c8fcd323ef resolver: document that SetDefaultScheme should be called at init time (#2217)
fixes #2216
2018-07-16 11:19:04 -07:00
1dab6d184d addrconn: remove unused wait() method (#2220) 2018-07-16 08:21:34 -07:00
ce6ee6b031 dns resolver: exponential retry when getting empty address list (#2201) 2018-07-13 13:05:31 -07:00
e193757038 internal/transport: remove some unused fields from structs (#2213)
- Flush and Authority are never read by the transport.
- Authority is used indirectly; move it to dialOptions.
- Delay is only set to false.
2018-07-13 09:56:47 -07:00
984bb2c619 internal: move DialOptions to a new file (#2193) 2018-07-12 18:01:30 -07:00
8c15646409 Benchmark: fix build tags (#2099) 2018-07-12 13:06:42 -07:00
11b582728a transport: move to internal to make room for new, public transport API (#2212)
This is a breaking change, but the transport package was never intended for use outside of grpc.  Any current users that we are aware of are incorrect or have a preferred alternative.
2018-07-11 11:22:45 -07:00
f57a529f33 balancer: add rpc method to PickOptions (#2204)
Provide additional context to Pickers that wish to make decisions based on the RPC method.

Relevant issue: https://github.com/grpc/grpc-go/issues/2103
2018-07-11 10:18:09 -07:00
e85134fd65 transport: double-check deadline when processing server cancelation (#2211) 2018-07-10 15:56:11 -07:00
c491b25057 createTransport: timeout under waitForHandshake case should not have transport transferred to ready stage (#2208) 2018-07-09 18:20:24 -07:00
50de898e66 deprecate stream, move documentation to client|server stream (#2198)
docs: deprecate stream, move documentation to client|server stream

Deprecate Stream, and move the methods and documention to ServerStream
and ClientStream. This is due to the fact that there are different
semantics for SendMsg, and it's quite confusing to document one method
for two things. Furthermore, Stream is not actually used in any way
other than to be inherited by ClientStream and ServerStream.

Relevant issue: #2159
2018-07-09 16:46:25 -07:00
264daa2be4 Set and respect HTTP/2 SETTINGS_MAX_HEADER_LIST_SIZE (#2084) 2018-07-09 11:27:58 -07:00
7f14997525 travis: skip race testing on 386 as it is not supported (#2207) 2018-07-09 11:27:27 -07:00
f3361fda2f internal: changes to travis to make it do less work (#2200)
This PR removes race testing from all travis runs except go1.10 except during nightlies.

|                 | Before* | After** | % Change |
| --------------- | ------- | ------- | -------- |
| Total runtime   | 65m     | 45m     | -31%     |
| Wall-clock time | 21m     | 11.5m   | -45%     |

*: (one random sample I found in our PRs)
**: (latest run on this PR)

Also includes some organization changes (making proper use of `before_install` and `install`) / cleanups in `.travis.yml` to make it easier to understand.  As a result, we now stop unintentionally running `vet` on a second build by accident (go1.10 with retry enabled).
2018-07-06 11:09:40 -07:00
40cd6b15e2 stream: in withRetry, block until Status is valid and check on io.EOF (#2199)
Also, return an error if SendMsg is called after CloseSend.
2018-07-03 14:07:07 -07:00
a3e99ebee0 grpclb: s/fmt.Errorf/errors.New/ (#2196)
`errors.New` is more preferable when there is nothing to format from go readability perspective.
2018-07-03 09:15:11 -07:00
d35d006431 Fix flaky test: TestClientStreamingError (#2192) 2018-07-02 10:08:26 -07:00
75703b312b Add documentation for loopy. (#2169) 2018-06-29 16:00:15 -07:00
cedd9131e8 Fix test: wait on server to signal successful accept. (#2183) 2018-06-28 11:19:52 -07:00
6a43dcc2ac Allow interop client to use call creds on any secure channel (#2185) 2018-06-28 10:41:13 -07:00
40a879c23a client: Implement gRFC A6: configurable client-side retry support (#2111) 2018-06-27 16:18:41 -07:00
f9bde863c2 documentation: clarify SendMsg documentation (#2171)
documentation: clarify SendMsg documentation

Relevant issue: #2159
2018-06-27 16:16:07 -07:00
2106e3b393 credentials: cleanup version-specific files (#2178) 2018-06-27 15:49:04 -07:00
5ea5eec711 Restrict channelz service test to x86 architecture (#2179) 2018-06-27 11:58:54 -07:00
3ec535a269 client, server: update dial/server buffer options to support a "disable" setting (#2147) 2018-06-27 11:16:33 -07:00
f1ab7acf3f credentials: add more appengine build tags (#2177) 2018-06-26 14:01:50 -07:00
b39aa9e037 Revert stickiness (#2175)
Stickiness will be reimplemented as part of a balancer/resolver redesigning/extending.
2018-06-26 10:02:54 -07:00
4f70de23e6 minor fix: remove redundant channelz files (#2176) 2018-06-25 18:23:40 -07:00
7268ca41d3 channelz: stage 4 - add security and socket option info with appengine build tags (#2149) 2018-06-25 10:32:20 -07:00
8e18752766 Update flow control test to have multiple concurrent streams. (#2170) 2018-06-22 16:02:44 -07:00
92d38b03b1 balancer/grpclb: update to latest lb proto (#2172) 2018-06-22 15:31:54 -07:00
0c16dc1c74 resolver/dns: error if target ends with a colon instead of assuming the default port (#2150)
Technically this is a behavior change, but any usage of "host:" or ":" should be considered invalid, since dialing a target with a trailing ":" attempts to dial port zero, which is never valid (and we always used to pass the target directly to `net.Dial`).

In https://github.com/grpc/grpc/pull/15618, the target format will be defined as: `host[:port]` -- not: `host[:[port]]`.  (This is potentially subject to change.)
2018-06-22 15:23:03 -07:00
ba63e52faf grpclb: remove old grpclb generated code (#2143) 2018-06-21 13:10:52 -07:00