History log of /external/tensorflow/tensorflow/core/platform/cloud/curl_http_request.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
9fa14867a61e3434e1fc9442e7102c40c4b6b5f0 05-Jan-2018 A. Unique TensorFlower <gardener@tensorflow.org> Make 403 errors due to GCS more verbose.

The current GCS client code neglects to print the nature of a 403 error. For
example, a 403 error can occur because of permissions or rate limiting. The
nature of a 403 error is communicated through the HTTP response. Thus, this
patch extends the 403 error message with the HTTP response returned by curl.

As an example, a 403 error looked like this before this patch:
PermissionDeniedError: Error executing an HTTP request (HTTP response code 403, error code 0, error message '')

With this patch, it might look like:
PermissionDeniedError: Error executing an HTTP request (HTTP response code 403, error code 0, error message ''), response {
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "userRateLimitExceeded",
"message": "User Rate Limit Exceeded"
}
],
"code": 403,
"message": "User Rate Limit Exceeded"
}
}
PiperOrigin-RevId: 180853399
/external/tensorflow/tensorflow/core/platform/cloud/curl_http_request.h
4edaeba3b14e706740ef4160afa257de565ffd6e 21-Dec-2017 Anna R <annarev@google.com> Automated g4 rollback of changelist 179729641

PiperOrigin-RevId: 179742670
/external/tensorflow/tensorflow/core/platform/cloud/curl_http_request.h
d69515a21cae5bb002ec75783ef973ebf253fdec 20-Dec-2017 A. Unique TensorFlower <gardener@tensorflow.org> Add the capability of verbose logging for HTTP requests to the TensorFlow GCS client.

This change allows the GCS client within TensorFlow to log verbose information about HTTP requests to the standard Google logger. (Actually, to the TensorFlow variant of the standard Google logger.)

This capability is disabled by default. It is enabled by setting the environment variable GCS_LOG_HTTP_REQUEST_VERBOSE=1 (or =true).

PiperOrigin-RevId: 179729641
/external/tensorflow/tensorflow/core/platform/cloud/curl_http_request.h
17900eb2fa0c144d4899b5867f68c010916448c0 20-Dec-2017 A. Unique TensorFlower <gardener@tensorflow.org> Convert Status-based call sequence checks to CHECK-based.

Call sequence requirements are correctness requirements; any violation of a correctness requirement is a code defect / bug. Currently, some code in the TF GCS client uses Status objects to report call sequence violations. This tolerates bugs, allowing them to go undetected and uncorrected.

This change converts many call sequence checks to use CHECK, rather than Status. The result is code that is simpler, and that exposes bugs, rather than protecting them.

PiperOrigin-RevId: 179709047
/external/tensorflow/tensorflow/core/platform/cloud/curl_http_request.h
3abc6ef02980b0d5fdb226d10cd513122a74c0ea 19-Dec-2017 A. Unique TensorFlower <gardener@tensorflow.org> Remove a series of allocations and memcpys from the GCS read path (TF infeed path).

The GCS client uses an intermediate std::vector<char> buffer for all reads. This turns out to have a substantial cost, in allocations and in memcpys. During load testing with a simple tool for measuring GCS throughput (but not running TensorFlow), removing this allocation and memcpy increased throughput by about 8%, and significantly reduced steady-state heap memory used. I have not measured the impact when running the full TensorFlow pipeline, but I expect there to be gains, due to the lower memory utilization and the lower cache demand.

PiperOrigin-RevId: 179581563
/external/tensorflow/tensorflow/core/platform/cloud/curl_http_request.h
50784e4ef8d920ed5fe7b3a9d0bafbac073ebb26 12-Dec-2017 Brennan Saeta <saeta@google.com> Automated g4 rollback of changelist 177619402

PiperOrigin-RevId: 178800980
/external/tensorflow/tensorflow/core/platform/cloud/curl_http_request.h
8b2f6ceeb02f5fe8b0d63a41e3119127c76907b6 02-Dec-2017 Brennan Saeta <saeta@google.com> Log curl request state when requests hang.

PiperOrigin-RevId: 177657178
/external/tensorflow/tensorflow/core/platform/cloud/curl_http_request.h
8167f3587f3953e191dffca388cbdd4a837aa231 01-Dec-2017 Gunhan Gulsoy <gunan@google.com> Automated g4 rollback of changelist 177614538

PiperOrigin-RevId: 177619402
/external/tensorflow/tensorflow/core/platform/cloud/curl_http_request.h
d8e98c8753e3d89e6d4e989e52e910495c4f64ac 01-Dec-2017 Brennan Saeta <saeta@google.com> Customize request timeouts for GCS filesystem.

PiperOrigin-RevId: 177614538
/external/tensorflow/tensorflow/core/platform/cloud/curl_http_request.h
74c5ff451a532e47ae1ba5a4f5b3aef77f84c180 01-Dec-2017 Brennan Saeta <saeta@google.com> Store and log request URI when requests hang.

PiperOrigin-RevId: 177596564
/external/tensorflow/tensorflow/core/platform/cloud/curl_http_request.h
b1d89c147d079ab97356b6a677cbf5ee726313d6 16-Nov-2017 Brennan Saeta <saeta@google.com> Support user-space DNS caching for the GCS filesystem.

In some environments, DNS resolution is unreliable. This change adds an optional userspace caching mechanism to radically reduce the amount of DNS queries sent to upstream resolvers.

PiperOrigin-RevId: 175910642
/external/tensorflow/tensorflow/core/platform/cloud/curl_http_request.h
60205721e1edd791115f8266b84fdd55070d5f1b 29-Sep-2017 Derek Murray <mrry@google.com> Split `HttpRequest` into an abstract interface and concrete `CurlHttpRequest`.

This is a step towards implementing an HTTP client for platforms where we do
not build libcurl.

PiperOrigin-RevId: 170426868
/external/tensorflow/tensorflow/core/platform/cloud/curl_http_request.h