6abbdcdc06
proxy: simplify channel receive, add missing function call
2016-04-07 12:24:17 -07:00
2c50eb240e
*: mv etcdhttp into api pkg
2016-04-04 16:31:35 -07:00
bd832e5b0a
*: migrate Godeps to vendor/
2016-03-22 17:10:28 -07:00
85f4475f62
httptypes/errors: HTTPError.WriteTo returns error
...
Squashing all commits into this one
(from https://github.com/coreos/etcd/pull/357 ).
Thanks,
2015-09-25 08:06:26 -07:00
ece39c9462
proxy: always cancel in-flight request
...
This fits the way for go1.5 to cancel request.
2015-08-25 08:59:59 -07:00
7bca757d09
*: add metrics to store
and proxy
.
2015-07-07 16:01:51 +01:00
a6e6186477
proxy: always set requestClosed flag when client closes the connection prematurely
2015-06-19 08:45:45 +02:00
5e31854afd
proxy: use atomic operations for requestCanceled flag
2015-06-18 20:56:28 +02:00
864ce5f946
proxy: handle canceled proxy request gracefully
...
when a client of the proxy server cancels a request the proxy should not
set the endpoint state to unavailable
2015-06-18 20:52:52 +02:00
4e85f932e0
proxy: Reuse a bytes buffer as proxy request body.
...
The call to transport.RoundTrip closes the request body regardless of
the value of request.Closed. This causes subsequent calls to RoundTrip
using the same request body to fail.
Fixes #2895
2015-06-02 10:27:20 -07:00
a68efe7d1e
proxy: Fix connection leak when client disconnect
...
established connections were leaked when client disconnected before
proxyreq completes. This happens all time for wait=true requests.
2015-04-30 11:41:42 +09:00
f1ed69e883
*: switch to line comments for copyright
...
Build tags are not compatible with block comments.
Also adds copyright header to a few places it was missing.
2015-01-26 09:53:30 -08:00
424377f859
proxy: add a todo for logging
2014-11-10 16:37:15 -08:00
6fa8f77638
proxy: return JSON errors
2014-11-10 15:56:42 -08:00
7a4d42166b
*: add license header to all source files
2014-10-17 15:41:22 -07:00
a155f0bda6
proxy: rewrite stdlib ReverseProxy
...
The ReverseProxy code from the standard library doesn't actually
give us the control that we want. Pull it down and rip out what
we don't need, adding tests in the process.
All available endpoints are attempted when proxying a request. If a
proxied request fails, the upstream will be considered unavailable
for 5s and no more requests will be proxied to it. After the 5s is
up, the endpoint will be put back to rotation.
2014-09-12 22:56:23 -07:00