distribution/registry
Aaron Lehmann 6cb5670ba5 Use CloseNotifier to supress spurious HTTP 400 errors on early disconnect
When a client disconnects without completing a HTTP request, we were
attempting to process the partial request, which usually leads to a 400
error. These errors can pollute the logs and make it more difficult to
track down real bugs.

This change uses CloseNotifier to detect disconnects. In combination
with checking Content-Length, we can detect a disconnect before sending
the full payload, and avoid logging a 400 error.

This logic is only applied to PUT, POST, and PATCH endpoints, as these
are the places where disconnects during a request are most likely to
happen.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2015-07-31 17:30:26 -07:00
..
api Merge pull request #791 from stevvooe/add-double-domain-image-name 2015-07-30 14:35:27 -07:00
auth auth.AccessController interface now uses distribution/context 2015-07-23 19:48:47 -07:00
client Make the registry client more tolerant about HTTP status codes 2015-07-24 16:14:04 -07:00
handlers Use CloseNotifier to supress spurious HTTP 400 errors on early disconnect 2015-07-31 17:30:26 -07:00
listener [Server] Listen and serve on a unix socket 2015-05-11 16:00:14 +03:00
middleware Rename top level registry interface to namespace 2015-04-09 19:21:33 -07:00
storage Allow disabling of starage driver redirects 2015-07-24 16:59:35 -07:00
doc.go Integrate layer info cache with registry and storage 2015-04-02 20:15:16 -07:00