Skip to content
Snippets Groups Projects
  1. Jan 09, 2021
  2. May 11, 2020
  3. Feb 06, 2020
  4. Jan 06, 2020
    • ale's avatar
      Let the configuration override connection and max request timeouts · c165311f
      ale authored
      Add the 'connect_timeout' and 'request_max_timeout' configuration
      fields, to control respectively the initial connection timeout, and
      the maximum time for each individual request. This allows fine-tuning
      of the expected performance of specific backends, for example to let
      optional backends fail fast.
      c165311f
  5. Jun 30, 2019
    • ale's avatar
      Prevent premature cancellation of the HTTP request context · 54f0ac4c
      ale authored
      The Context in the http.Request is bound to the one we give it when
      calling balancedBackend.do(), so we were accessing it out of scope
      when calling the final json.Decode on the response body.
      
      This was not a problem for most *small* requests, as the response Body
      already contains all the data due to having read it along with the
      headers. However, larger response bodies would cause json.Decode to
      call a Read with what at that point is a canceled Context, so the Call
      function would return a mysterious "context canceled" error.
      
      (Note that this change introduces a minor, probably less annoying,
      issue, where we can't reset "resp" between successive calls so we may
      be invoking json.Decode on a non-pristine object if the first call
      fails in some circumstances).
      54f0ac4c
  6. Jan 29, 2019
  7. Nov 18, 2018
    • ale's avatar
      Add support for opencensus tracing · 1f95fcdd
      ale authored
      Trace requests on client and server HTTP traffic, using a system-wide
      configuration file to control reporting.
      1f95fcdd
  8. Nov 16, 2018
  9. Oct 26, 2018
  10. Aug 28, 2018
  11. Aug 17, 2018
  12. Aug 16, 2018
    • ale's avatar
      Refactor the clientutil package · 193e29e6
      ale authored
      Implement a simpler API for the Backend interface, removing most old
      public methods and replacing them with a single Call() method, making
      the package look a bit more like an actual rpc package (so, hopefully,
      easier to replace in the future).
      193e29e6
  13. Aug 15, 2018
  14. Dec 17, 2017
  15. Dec 11, 2017
  16. Dec 10, 2017
    • ale's avatar
      Modify the temporary error interface for Retry · 1fd8c2e2
      ale authored
      Now the default is for errors to be permanent, unless the error itself
      has a Temporary() method that returns true (like the transient network
      errors do in the net/ package).
      1fd8c2e2
  17. Dec 07, 2017
  18. Nov 27, 2017
  19. Nov 26, 2017
  20. Nov 23, 2017
  21. Nov 22, 2017
Loading