82 Commits

Author SHA1 Message Date
794873f0a2 Added calloption to retrieve peer information 2017-02-07 10:41:32 -08:00
cb653e4b61 Change stats APIs (#1030)
Change stats API from one static handler to one handler per server or client.
2017-01-09 17:11:32 -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
deb01f422a add stats tagger APIs and connection stats. (#992)
* add stats.tagger APIs and connection stats.

* fix comments

use ac.ctx in http2client
change name and comments
small fixes stats_tests

* add a TODO to ConnTagInfo

* rename handle to handleRPC

* modify stats comments
2016-11-30 16:25:46 -08:00
5938492b60 fix comments 2016-11-07 15:16:52 -08:00
a4edc462a2 renaming 2016-11-07 15:16:52 -08:00
aa5b5c7e2a client side, use user context, and change sent time 2016-11-07 15:16:52 -08:00
1896a21fb3 fix review comments 2016-11-07 15:16:52 -08:00
1d2a929ae5 add stats.Begin and stats.End 2016-11-07 15:16:52 -08:00
c0087b3c91 add failfast option to stats 2016-11-07 15:16:52 -08:00
c698588285 Renaming types and variables 2016-11-07 15:16:52 -08:00
e42a66c81b add client 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
4596c55b7a Use the correct error in defer call 2016-10-25 15:32:12 -07:00
52f6504dc2 Merge pull request #867 from iamqizhao/master
Support client side interceptor
2016-09-02 15:12:15 -07:00
5e734ab23e Avoid creating transport stream error outside of transport 2016-09-02 11:57:42 -07:00
1e47e17230 Support client side interceptor 2016-08-26 13:50:38 -07:00
c72b08a774 Change errors returned by ac.wait() 2016-08-16 16:56:16 -07:00
a4587cd3f0 Fix review comments 2016-08-02 21:07:00 -07:00
558ecfb3a6 Remove RPC non-fail-fast return 2016-08-01 15:55:08 -07:00
e9e6ae6215 Make Dial() withblock error on bad certificates 2016-08-01 15:55:08 -07:00
a4c08780d5 Merge branch 'master' of https://github.com/grpc/grpc-go 2016-07-29 10:10:58 -07:00
32df3a68d0 more fix 2016-07-28 18:32:51 -07:00
8c908a8c1d Reject over-sized requests on server 2016-07-26 16:44:49 -07:00
f1e4d3b180 allow multiple GoAways and retrying on illegal streams 2016-07-25 16:35:32 -07:00
1ea428008b add the missing close(s.done) 2016-07-15 16:55:51 -07:00
55b7bd0424 add the missing close(s.done) 2016-07-15 16:39:31 -07:00
07bf108290 fix Invoke to accommodate the change 2016-07-15 16:02:21 -07:00
ffdfb592e8 Fix type assertion error after rebase 2016-07-08 10:35:38 -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
9a14ca798d Add more comments 2016-05-25 17:18:05 -07:00
9dc3da0633 make downErr for Balancer down closure 2016-05-25 11:28:45 -07:00
8eab9cb6bf rewrite Balancer Get comments 2016-05-24 18:14:24 -07:00
0b1df3bca2 add BalancerGetOption 2016-05-24 17:19:44 -07:00
5b484e4099 add Notify API; move the name resolving into Balancer 2016-05-23 19:25:01 -07:00
5d62215b41 some minor fixes 2016-05-18 16:26:12 -07:00
162d8d2d33 Tune Invoke behavior for the new Balancer. 2016-05-18 11:18:10 -07:00
9c2d8546bf load balancer 2016-05-06 15:47:09 -07:00
11ef22ebfb make comment on invoke/sendmsg more clear 2016-04-01 10:47:25 -07:00
a294a45ba0 Don't treat StatusDesc() as a format string.
For example, if the error message contains "%v", then passing
StatusDesc() as the format string to Errorf() will replace "%v" with
"%!v(MISSING)".
2016-03-19 17:15:21 -07:00
110fd99e30 Fix crashes where transports returned errors unhandled by the message parser.
The http.Handler-based transport body reader was returning error types
not understood by the recvMsg parser. See #557 for some background and
examples.

Fix the http.Handler transport and add tests. I copied in a subset of
the http2 package's serverTest type, adapted slightly to work with
grpc. In the process of adding tests, I discovered that
ErrUnexpectedEOF was also not handled by the regular server
transport. Document the rules and fix that crash as well.

Unrelated stuff in this CL:

* make tests listen on localhost:0 instead of :0, to avoid Mac firewall
  pop-up dialogs.

* rename parser.s field to parser.r, to be more idiomatic that it's an
  io.Reader and not anything fancier. (it's not acting like type
  stream, even if that's the typical concrete type)

* move 5 byte temp buffer into parser, rather than allocating it for
  each new message. (drop in the bucket improvement in garbage; more
  to do later)

* rename http2RSTErrConvTab to http2ErrConvTab, per Qi's earlier
  CL. Also add the HTTP/1.1-required error mapping for completeness,
  not that it should ever arise with gRPC, also per Qi's earlier CL
  referenced in #557.
2016-02-24 15:09:17 -08:00
af8888dc8d remove Compressor/DecompressorGenerator 2016-01-29 14:38:20 -08:00
4258b32de7 Don't create buffer if compressor is nil 2016-01-25 11:47:04 -08:00
da3bb0c9f7 Support compression 2016-01-22 18:21:41 -08:00
ea6e7189de Move callInfo into the right position 2016-01-07 14:44:36 -08:00
390cd42894 revise Picker API 2015-10-08 11:05:59 -07:00
ec8414396c bug fix: stop busy wait on new transport 2015-10-08 09:09:06 -07:00