diff options
author | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2012-12-11 18:22:41 -0500 |
---|---|---|
committer | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2012-12-11 18:22:41 -0500 |
commit | a5205d4d6a5f3478927cbede80671051c3e16f35 (patch) | |
tree | 49fcf482e2c15068313ce74ae220ec9fb3e7c93e /indra/llcorehttp | |
parent | 8657da24cd206af87cb32d095b347f7aa07596b5 (diff) | |
parent | 2807c0b9424f9d3f80e49a3c150af0a459676d79 (diff) |
merge
Diffstat (limited to 'indra/llcorehttp')
-rw-r--r-- | indra/llcorehttp/CMakeLists.txt | 2 | ||||
-rw-r--r-- | indra/llcorehttp/_httpinternal.h | 10 | ||||
-rw-r--r-- | indra/llcorehttp/examples/http_texture_load.cpp | 6 |
3 files changed, 15 insertions, 3 deletions
diff --git a/indra/llcorehttp/CMakeLists.txt b/indra/llcorehttp/CMakeLists.txt index 82fb3f0d4e..9adfd0ed62 100644 --- a/indra/llcorehttp/CMakeLists.txt +++ b/indra/llcorehttp/CMakeLists.txt @@ -174,7 +174,7 @@ if (LL_TESTS) # The following come from LLAddBuildTest.cmake's INTEGRATION_TEST_xxxx target. set_target_properties(http_texture_load PROPERTIES - LINK_FLAGS "/debug /NODEFAULTLIB:LIBCMT /SUBSYSTEM:WINDOWS /INCLUDE:__tcmalloc" + LINK_FLAGS "/debug /NODEFAULTLIB:LIBCMT /SUBSYSTEM:WINDOWS ${TCMALLOC_LINK_FLAGS}" LINK_FLAGS_DEBUG "/NODEFAULTLIB:\"LIBCMT;LIBCMTD;MSVCRT\" /INCREMENTAL:NO" LINK_FLAGS_RELEASE "" ) diff --git a/indra/llcorehttp/_httpinternal.h b/indra/llcorehttp/_httpinternal.h index 465e2036b3..14f744a9f1 100644 --- a/indra/llcorehttp/_httpinternal.h +++ b/indra/llcorehttp/_httpinternal.h @@ -111,7 +111,15 @@ const int HTTP_TRACE_MIN = HTTP_TRACE_OFF; const int HTTP_TRACE_MAX = HTTP_TRACE_CURL_BODIES; // Request retry limits -const int HTTP_RETRY_COUNT_DEFAULT = 5; +// +// At a minimum, retries need to extend past any throttling +// window we're expecting from central services. In the case +// of Linden services running through the caps routers, there's +// a five-second or so window for throttling with some spillover. +// We want to span a few windows to allow transport to slow +// after onset of the throttles and then recover without a final +// failure. Other systems may need other constants. +const int HTTP_RETRY_COUNT_DEFAULT = 8; const int HTTP_RETRY_COUNT_MIN = 0; const int HTTP_RETRY_COUNT_MAX = 100; diff --git a/indra/llcorehttp/examples/http_texture_load.cpp b/indra/llcorehttp/examples/http_texture_load.cpp index 998dc9240b..40ad4f047d 100644 --- a/indra/llcorehttp/examples/http_texture_load.cpp +++ b/indra/llcorehttp/examples/http_texture_load.cpp @@ -153,6 +153,7 @@ public: // int main(int argc, char** argv) { + LLCore::HttpStatus status; bool do_random(false); bool do_verbose(false); @@ -215,6 +216,9 @@ int main(int argc, char** argv) // Initialization init_curl(); LLCore::HttpRequest::createService(); + LLCore::HttpRequest::setPolicyClassOption(LLCore::HttpRequest::DEFAULT_POLICY_ID, + LLCore::HttpRequest::CP_CONNECTION_LIMIT, + concurrency_limit); LLCore::HttpRequest::startThread(); // Get service point @@ -228,7 +232,7 @@ int main(int argc, char** argv) ws.loadTextureUuids(uuids); ws.mRandomRange = do_random; ws.mVerbose = do_verbose; - ws.mMaxConcurrency = concurrency_limit; + ws.mMaxConcurrency = 100; if (! ws.mTextures.size()) { |