You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@curator.apache.org by "Dimitar Dyankov (JIRA)" <ji...@apache.org> on 2015/09/12 22:08:46 UTC
[jira] [Created] (CURATOR-262) Issue with ExponentialBackoffRetry
Dimitar Dyankov created CURATOR-262:
---------------------------------------
Summary: Issue with ExponentialBackoffRetry
Key: CURATOR-262
URL: https://issues.apache.org/jira/browse/CURATOR-262
Project: Apache Curator
Issue Type: Bug
Reporter: Dimitar Dyankov
Assignee: Jordan Zimmerman
Hi,
Looking at the ExponentialBackOff Strategy for the apache curator I found this issue :
@Override
protected int getSleepTimeMs(int retryCount, long elapsedTimeMs)
{
// copied from Hadoop's RetryPolicies.java
int sleepMs = baseSleepTimeMs * Math.max(1, random.nextInt(1 << (retryCount + 1)));
if ( sleepMs > maxSleepMs )
{
log.warn(String.format("Sleep extension too large (%d). Pinning to %d", sleepMs, maxSleepMs));
sleepMs = maxSleepMs;
}
return sleepMs;
}
since sleepMs is an Integer and retryCount could be as large as 29 we could fall into an integer overflow case and therefore sleepMs being a negative number.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)