[
https://issues.apache.org/jira/browse/GEODE-6677?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Charlie Black updated GEODE-6677:
---------------------------------
Description:
A user can set `isHA() == true`, retries == -1, and `CLIENT_FUNCTION_TIMEOUT`.
The timeout is currently implemented as per attempt. The default is 10000 ms.
The default for retries is -1.
With the default of -1 Geode will continually attempt to call the function and
ignore the expected behavior.
The expected behavior with respect to the default of -1 that means each server
will be retried once and the system should throw an exception.
>From query the exception that is thrown is for system with 2 servers when the
>query exceeds the time out and retry of -1:
{{Exception in thread "main"
org.apache.geode.cache.client.ServerConnectivityException: Pool unexpected
socket timed out on client connection=Pooled Connection to voltron:64615:
Connection[voltron:64615]@1279740095 attempt=2). Server unreachable: could not
connect after 2 attempts}}
was:
A user can set `isHA()`, retries, and `CLIENT_FUNCTION_TIMEOUT`. The timeout is
currently implemented as per attempt, not the overall execution inclusive of
retries.
When both CLIENT_FUNCTION_TIMEOUT and isHA are set (and retries is set to the
default of “forever”), a timeout due to CPU overload will inject more load into
the system and could eventually cause the cluster to fall over.
The user expects the combination of these settings to mean “If execution fails,
keep trying up until retries limit is reached OR timeout expires, whichever
comes first”.
> Function with timeout, isHA==true and retries can lead to issues
> ----------------------------------------------------------------
>
> Key: GEODE-6677
> URL: https://issues.apache.org/jira/browse/GEODE-6677
> Project: Geode
> Issue Type: Bug
> Reporter: Charlie Black
> Assignee: Bill Burcham
> Priority: Major
> Labels: SmallFeature
>
> A user can set `isHA() == true`, retries == -1, and `CLIENT_FUNCTION_TIMEOUT`.
> The timeout is currently implemented as per attempt. The default is 10000
> ms.
> The default for retries is -1.
> With the default of -1 Geode will continually attempt to call the function
> and ignore the expected behavior.
>
> The expected behavior with respect to the default of -1 that means each
> server will be retried once and the system should throw an exception.
> From query the exception that is thrown is for system with 2 servers when the
> query exceeds the time out and retry of -1:
> {{Exception in thread "main"
> org.apache.geode.cache.client.ServerConnectivityException: Pool unexpected
> socket timed out on client connection=Pooled Connection to voltron:64615:
> Connection[voltron:64615]@1279740095 attempt=2). Server unreachable: could
> not connect after 2 attempts}}
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)