summaryrefslogtreecommitdiff
path: root/indra/newview/lleventpoll.cpp
diff options
context:
space:
mode:
authorJonathan "Geenz" Goodman <geenz@lindenlab.com>2026-05-20 14:14:46 -0400
committerGitHub <noreply@github.com>2026-05-20 14:14:46 -0400
commitacde43cce9700f5c5a50b03b7d96c1db18734e7e (patch)
tree885411015577dfaafa844fc8943d834c9d67bd7d /indra/newview/lleventpoll.cpp
parentdf844170600608b37c2725f7a263f1de3b055618 (diff)
parent7a40e2702f7d2a81e674f66f637261a09de5b9ca (diff)
Merge pull request #5844 from secondlife/geenz/26.3-to-develop
26.3 to Develop
Diffstat (limited to 'indra/newview/lleventpoll.cpp')
-rw-r--r--indra/newview/lleventpoll.cpp25
1 files changed, 14 insertions, 11 deletions
diff --git a/indra/newview/lleventpoll.cpp b/indra/newview/lleventpoll.cpp
index a18fdf74c1..836ff63429 100644
--- a/indra/newview/lleventpoll.cpp
+++ b/indra/newview/lleventpoll.cpp
@@ -73,9 +73,9 @@ namespace Details
// We will wait RETRY_SECONDS + (errorCount * RETRY_SECONDS_INC) before retrying after an error.
// This means we attempt to recover relatively quickly but back off giving more time to recover
// until we finally give up after MAX_EVENT_POLL_HTTP_ERRORS attempts.
- constexpr F32 EVENT_POLL_ERROR_RETRY_SECONDS = 15.f; // ~ half of a normal timeout.
- constexpr F32 EVENT_POLL_ERROR_RETRY_SECONDS_INC = 5.f; // ~ half of a normal timeout.
- constexpr S32 MAX_EVENT_POLL_HTTP_ERRORS = 10; // ~5 minutes, by the above rules.
+ constexpr F32 EVENT_POLL_ERROR_RETRY_SECONDS = 1.f;
+ constexpr F32 EVENT_POLL_ERROR_RETRY_SECONDS_INC = 3.f;
+ constexpr S32 MAX_EVENT_POLL_ERRORS = 15; // ~5 minutes, by the above rules.
constexpr F64 MIN_SECONDS_PASSED = 10.0; // Minimum time we expect the server to hold the request.
int LLEventPollImpl::sNextCounter = 1;
@@ -238,23 +238,26 @@ namespace Details
}
else if (!status.isHttpStatus())
{
- /// Some LLCore or LIBCurl error was returned. This is unlikely to be recoverable
- LL_WARNS("LLEventPollImpl") << "<" << counter << "> Critical error from poll request returned from libraries. Canceling coroutine." << LL_ENDL;
- break;
+ // Some LLCore or LIBCurl error was returned.
+ LL_WARNS("LLEventPollImpl") << "<" << counter << "> Error from poll request returned from libraries. " << status.toTerseString() << LL_ENDL;
+ }
+ else
+ {
+ LL_WARNS("LLEventPollImpl") << "<" << counter << "> Error result from LLCoreHttpUtil::HttpCoroHandler. Code "
+ << status.toTerseString() << ": '" << httpResults["message"] << "'" << LL_ENDL;
}
- LL_WARNS("LLEventPollImpl") << "<" << counter << "> Error result from LLCoreHttpUtil::HttpCoroHandler. Code "
- << status.toTerseString() << ": '" << httpResults["message"] << "'" << LL_ENDL;
- if (errorCount < MAX_EVENT_POLL_HTTP_ERRORS)
+ if (errorCount < MAX_EVENT_POLL_ERRORS)
{ // An unanticipated error has been received from our poll
// request. Calculate a timeout and wait for it to expire(sleep)
- // before trying again. The sleep time is increased by 5 seconds
+ // before trying again. The sleep time is increased by 3 seconds
// for each consecutive error.
- ++errorCount;
F32 waitToRetry = EVENT_POLL_ERROR_RETRY_SECONDS
+ errorCount * EVENT_POLL_ERROR_RETRY_SECONDS_INC;
+ ++errorCount;
+
LL_WARNS("LLEventPollImpl") << "<" << counter << "> Retrying in " << waitToRetry <<
" seconds, error count is now " << errorCount << LL_ENDL;