Menghan Li
5938492b60
fix comments
2016-11-07 15:16:52 -08:00
Menghan Li
a4edc462a2
renaming
2016-11-07 15:16:52 -08:00
Menghan Li
aa5b5c7e2a
client side, use user context, and change sent time
2016-11-07 15:16:52 -08:00
Menghan Li
1d2a929ae5
add stats.Begin and stats.End
2016-11-07 15:16:52 -08:00
Menghan Li
c698588285
Renaming types and variables
2016-11-07 15:16:52 -08:00
Menghan Li
1054f1c42b
add payload with original type to payload stats
2016-11-07 15:16:52 -08:00
Menghan Li
85c5e0e3b6
add errorStats
2016-11-07 15:16:52 -08:00
Menghan Li
7984a9c679
change CallBack to handler, and move ctx out of Stats.
2016-11-07 15:16:52 -08:00
Menghan Li
17ee5a3637
Add package stats, and export stats on server side.
2016-11-07 15:16:52 -08:00
iamqizhao
f3469bf27a
add the missing comment
2016-11-03 16:46:21 -07:00
iamqizhao
b85d2b0be5
Support transport tap
2016-11-03 14:21:24 -07:00
Mark Nevill
bac9e1d16e
Make concurrent Server.GracefulStop calls all behave equivalently.
2016-10-17 13:18:45 +01:00
Qi Zhao
b057848384
Merge pull request #914 from flisky/master
...
fix server exit due to a temporary network error
2016-10-14 11:34:03 -07:00
Yin Jifeng
e966e94443
fix server exit due to a temporary network error
2016-10-14 11:49:54 +08:00
Menghan Li
e790079956
Add grpc.SetHeader and ServerStream.SetHeader
2016-10-11 13:58:16 -07:00
Menghan Li
1247834778
Allow multiple calls to setTrailer
2016-09-29 14:38:20 -07:00
Menghan Li
1c20514d29
Make grpc.SendHeader return rpc error
2016-09-09 11:36:01 -07:00
Qi Zhao
8d57dd3404
Merge pull request #874 from menghanl/avoid_streamerror
...
Fix server side errors
2016-09-02 14:30:07 -07:00
Eric Drechsel
3bea3c5f8b
Doc: Fix typo in func (s *Server) comment
2016-09-02 12:20:15 -07:00
Menghan Li
5e734ab23e
Avoid creating transport stream error outside of transport
2016-09-02 11:57:42 -07:00
Menghan Li
0c58a17d6f
Add credentials ErrConnDispatch
2016-08-24 16:20:57 -07:00
iamqizhao
bcbb6549ac
Merge branch 'master' of https://github.com/grpc/grpc-go
2016-07-29 16:20:08 -07:00
iamqizhao
b13920a0cf
add the mem alloc guard on server
2016-07-29 16:19:20 -07:00
iamqizhao
0f3fc4355d
refactor GracefulStop a bit
2016-07-29 10:59:24 -07:00
iamqizhao
a4c08780d5
Merge branch 'master' of https://github.com/grpc/grpc-go
2016-07-29 10:10:58 -07:00
Tamir Duberstein
069ed42115
Fix deadlock when GracefulStop()ing multiple times
...
Fixes #793 .
2016-07-29 12:26:26 -04:00
iamqizhao
b128e7465a
merge the conflict
2016-07-28 13:17:23 -07:00
iamqizhao
c3a89f91a6
Merge branch 'master' of https://github.com/grpc/grpc-go
2016-07-28 13:04:50 -07:00
Tamir Duberstein
ac90a026b6
*: go vet
2016-07-27 23:39:19 -04:00
iamqizhao
110450d45e
fix races introduce by goaway
2016-07-27 17:27:10 -07:00
iamqizhao
8c908a8c1d
Reject over-sized requests on server
2016-07-26 16:44:49 -07:00
iamqizhao
f78100723d
Merge branch 'master' of https://github.com/grpc/grpc-go
2016-07-26 14:04:25 -07:00
iamqizhao
b071b83367
limit max msg size on server
2016-07-26 14:04:19 -07:00
iamqizhao
f1e4d3b180
allow multiple GoAways and retrying on illegal streams
2016-07-25 16:35:32 -07:00
iamqizhao
046e606dc5
clean up
2016-07-21 18:12:01 -07:00
iamqizhao
9ad4c58355
Make it work for streaming
2016-07-21 16:19:34 -07:00
iamqizhao
873cc272c2
support goaway
2016-07-20 18:48:49 -07:00
Qi Zhao
7428593149
Merge pull request #759 from menghanl/streams_in_serviceinfo_comments
...
Fix comments
2016-07-14 10:55:28 -07:00
Alexander Morozov
47de9c3564
server: close only non-closed listeners
...
The listener can be closed twice: in Close and in Serve. It might lead to
pretty bad things, for example, https://golang.org/src/net/unixsock_posix.go#L340
can delete a file which created by another listener.
Signed-off-by: Alexander Morozov <lk4d4math@gmail.com>
2016-07-12 21:16:45 -07:00
Menghan Li
42a2879989
Modify comments
2016-07-11 16:25:52 -07:00
Menghan Li
bc8885608f
Merge unary RPC info and streaming RPC info
2016-07-11 13:09:50 -07:00
Menghan Li
0ea9f970c0
Add StreamInfo for streaming types
2016-07-11 12:09:05 -07:00
Menghan Li
a518fa911d
Split methods and streams in service info
2016-07-11 12:09:05 -07:00
Daniel Ruehle
3802318f46
Make Errorf return pointer to rpcError
2016-07-08 10:28:36 -07:00
Menghan Li
078c90026f
Minor fixes
2016-06-27 14:51:09 -07:00
Menghan Li
26d2db5487
Add server.GetServiceInfo().
...
To replace server.ServiceMetadata() and server.AllServiceNames().
2016-06-27 12:01:05 -07:00
Menghan Li
69c7425a21
Change server.ServiceMetadata to take service name and method name.
...
And some minor changes.
2016-06-27 12:01:05 -07:00
Menghan Li
efe8d5f0f7
Add function AllServiceNames() to Server
2016-06-27 12:01:05 -07:00
Menghan Li
e826825578
Add function Metadata() to Server
2016-06-27 12:01:05 -07:00
Menghan Li
ad71085be9
Add metadata when registering service
2016-06-27 12:01:05 -07:00
Qi Zhao
3efe7aef96
Merge pull request #713 from menghanl/split_authenticator_and_credentials
...
[API revision] Separate TransportAuthenticator and PerRPCCredentials
2016-06-09 14:57:55 -07:00
Menghan Li
59486d9c17
Rename TransportAuthenticator to TransportCredentials
2016-06-08 11:19:25 -07:00
Menghan Li
7233968957
Add Metadata field to ServiceDesc
2016-06-07 15:40:14 -07:00
Menghan Li
6404c49192
Make TransportAuthenticator not embed Credentials
2016-06-06 16:24:46 -07:00
Qi Zhao
aecdccadd2
Merge pull request #683 from mwitkow/feature/propagate-authority
...
make :authority propagate to MD
2016-06-01 18:18:23 -07:00
Qi Zhao
89e77e914d
Merge pull request #706 from menghanl/fix_golint
...
Fix golint
2016-06-01 18:12:45 -07:00
Menghan Li
fc590f40e9
Fix golint errors
2016-06-01 16:40:26 -07:00
Ben Darnell
bab01e8e85
Fix a listener leak when a server is stopped before it starts
...
If server.Stop() and server.Serve() race, Serve() can return without
closing the listener. This in turn can lead to clients timing out trying
to connect to a server that is neither accepting nor rejecting
connections.
2016-05-22 14:52:40 -04:00
Michal Witkowski
1ef2c5293f
fix `TestCompressOK` and client reserved HTTP header handling
2016-05-17 14:35:18 +01:00
iamqizhao
e4bb85b43f
Support the stream interceptor on server side.
2016-04-21 14:58:45 -07:00
iamqizhao
616cb8ecfe
Add the missing comment
2016-04-19 16:33:09 -07:00
iamqizhao
310ca08496
gofmt -w
2016-04-19 16:04:09 -07:00
iamqizhao
c321387fd9
the installation of server unary interceptor
2016-04-19 15:54:30 -07:00
iamqizhao
61e92eacc3
Phase 1 to add the server interceptor
2016-04-18 16:18:34 -07:00
Qi Zhao
fea7689493
Merge pull request #584 from bradfitz/h2
...
Simplify server setup when testing the http.Handler-based server transport
2016-03-02 10:59:35 -08:00
Brad Fitzpatrick
18b2da6250
Simplify server setup when testing the http.Handler-based server transport
...
This simplifies the code that's used for wiring up the http.Handler-based
transport for testing. It's not used outside of tests.
http2.Server.ServeConn was added somewhat recently for other reasons and
I just realized it would simplify this code as well.
2016-03-02 18:49:23 +00:00
Brad Fitzpatrick
0f80f5b995
Remove test-only methods from grpc package.
...
Move the test-only methods to a new internal package so as to not
pollute the godoc, and to prevent people from using them. (Packages
named internal or under internal are private, and enforced by the go
tool)
2016-02-25 13:30:19 -08:00
Qi Zhao
89f694edb4
Merge pull request #569 from bradfitz/error_map
...
Fix crashes where transports returned errors unhandled by the message parser
2016-02-24 18:22:25 -08:00
Brad Fitzpatrick
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
Paul Querna
75fe76716d
log error message and source address in handshake error
2016-02-23 11:14:03 -08:00
Brad Fitzpatrick
7346c871b0
Add a ServeHTTP method to *grpc.Server
...
This adds new http.Handler-based ServerTransport in the process,
reusing the HTTP/2 server code in x/net/http2 or Go 1.6+.
All end2end tests pass with this new ServerTransport.
Fixes grpc/grpc-go#75
Also:
Updates grpc/grpc-go#495 (lets user fix it with middleware in front)
Updates grpc/grpc-go#468 (x/net/http2 validates)
Updates grpc/grpc-go#147 (possible with x/net/http2)
Updates grpc/grpc-go#104 (x/net/http2 does this)
2016-02-12 00:16:28 +00:00
Brad Fitzpatrick
07d3de883f
Update Server.Stop docs per code review comments from grpc/grpc-go#540
2016-02-09 23:50:03 +00:00
iamqizhao
854ad3492a
refine the comments of grpc.Server.Stop()
2016-02-09 15:22:53 -08:00
iamqizhao
77ccaa8fb2
Close ServerTransport instead of the raw connection
2016-02-08 14:27:06 -08:00
Qi Zhao
93591e7568
Merge pull request #508 from bradfitz/master
...
server: break up the Server.Serve method into some reusable parts
2016-01-29 15:51:48 -08:00
Brad Fitzpatrick
9d2ecf553a
server: break up the Server.Serve method into some reusable parts
...
Updates grpc/grpc-go#75
2016-01-29 23:20:54 +00:00
iamqizhao
af8888dc8d
remove Compressor/DecompressorGenerator
2016-01-29 14:38:20 -08:00
iamqizhao
9ec0eadc55
fix a nil map access bug
2016-01-28 18:51:38 -08:00
iamqizhao
35db64de36
Tune the server accepting code
2016-01-28 15:59:36 -08:00
iamqizhao
48d3f37c1f
remove some commented code left from previous PR
2016-01-26 16:21:22 -08:00
iamqizhao
4258b32de7
Don't create buffer if compressor is nil
2016-01-25 11:47:04 -08:00
iamqizhao
da3bb0c9f7
Support compression
2016-01-22 18:21:41 -08:00
iamqizhao
7aa428f5d6
Finish trace for premature error
2015-11-30 16:41:52 -08:00
iamqizhao
63a6c4155a
remove sync.WaitGroup param from ServerTransport.HandleStream
2015-10-06 16:44:30 -07:00
iamqizhao
9db3ca85c7
gofmt -w
2015-10-05 17:52:00 -07:00
iamqizhao
bc49d12737
refactor servier side trace again
2015-10-05 17:49:53 -07:00
iamqizhao
2aad9ba05f
server side tracing refactoring
2015-10-02 15:06:41 -07:00
iamqizhao
d77716f7d0
Merge branch 'master' of https://github.com/grpc/grpc-go
2015-10-02 10:29:54 -07:00
iamqizhao
ffba849039
add the missing commit in previous PR
2015-10-01 18:20:59 -07:00
iamqizhao
d12126f864
show deadline on server side trace
2015-10-01 18:08:09 -07:00
iamqizhao
00c7deef34
show deadline on server side trace
2015-10-01 18:07:38 -07:00
iamqizhao
09cdff2d62
Merge branch 'master' of https://github.com/grpc/grpc-go
2015-10-01 17:55:23 -07:00
iamqizhao
2bd5f5b1e1
show RemoteAddr in server trace
2015-10-01 17:43:05 -07:00
iamqizhao
3833326f9f
Merge branch 'master' of https://github.com/grpc/grpc-go
2015-10-01 17:25:03 -07:00
iamqizhao
d84ff12005
trace refactoring
2015-10-01 17:24:39 -07:00
iamqizhao
a15e3b9562
decodeFunc -> dec
2015-10-01 16:26:00 -07:00
iamqizhao
a71db53441
remove slice param
2015-09-29 20:10:20 -07:00
iamqizhao
a27bb5b14a
remove dead code
2015-09-29 19:08:55 -07:00
iamqizhao
ce2ef8c969
Enable payload tracing for unary rpc
2015-09-29 19:05:13 -07:00
Qi Zhao
e07e93b00e
Merge pull request #358 from Sajmani/work
...
grpc: make trace.FromContext work, and record handler status in traces
2015-09-28 23:29:59 -07:00