Skip to content

Commit eb4cd8e

Browse files
author
arnett, stu
committed
test corrections
1 parent fb74d94 commit eb4cd8e

File tree

3 files changed

+10
-8
lines changed

3 files changed

+10
-8
lines changed

src/main/java/com/emc/rest/smart/Host.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,11 +26,11 @@
2626
*/
2727
package com.emc.rest.smart;
2828

29-
import java.util.Date;
30-
3129
import org.slf4j.Logger;
3230
import org.slf4j.LoggerFactory;
3331

32+
import java.util.Date;
33+
3434
/**
3535
* Some basic statements about response index calculation:
3636
* <p>
@@ -105,7 +105,9 @@ public boolean isHealthy() {
105105
if (!healthy) return false;
106106
else if (consecutiveErrors == 0) return true;
107107
else {
108-
long coolDownExp = consecutiveErrors > MAX_COOL_DOWN_EXP ? MAX_COOL_DOWN_EXP : consecutiveErrors - 1;
108+
// errorWaitTime * 2 ^ (min(errors-1, 4))
109+
// i.e. back-off is doubled for each consecutive error up to 4
110+
long coolDownExp = Math.min(consecutiveErrors - 1, MAX_COOL_DOWN_EXP);
109111
long msSinceLastUse = System.currentTimeMillis() - lastConnectionTime;
110112
long errorCoolDown = (long) Math.pow(2, coolDownExp) * errorWaitTime;
111113
return msSinceLastUse > errorCoolDown;

src/test/java/com/emc/rest/smart/HostTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ public void testHost() throws Exception {
7171
Thread.sleep(errorWaitTime - 500); // wait until just before the error is cooled down
7272
Assert.assertFalse(host.isHealthy()); // host should still be in cool down period
7373

74-
Thread.sleep(500); // wait until cool down period is over
74+
Thread.sleep(600); // wait until cool down period is over
7575
Assert.assertTrue(host.isHealthy());
7676

7777
// test another error
@@ -89,7 +89,7 @@ public void testHost() throws Exception {
8989
Thread.sleep(2 * errorWaitTime - 500); // wait until just before cool down is over
9090
Assert.assertFalse(host.isHealthy());
9191

92-
Thread.sleep(500); // wait until cool down period is over
92+
Thread.sleep(600); // wait until cool down period is over
9393
Assert.assertTrue(host.isHealthy());
9494

9595
// test one more error
@@ -107,7 +107,7 @@ public void testHost() throws Exception {
107107
Thread.sleep(2 * 2 * errorWaitTime - 500); // wait until just before cool down is over
108108
Assert.assertFalse(host.isHealthy());
109109

110-
Thread.sleep(500); // wait until cool down period is over
110+
Thread.sleep(600); // wait until cool down period is over
111111
Assert.assertTrue(host.isHealthy());
112112

113113
// test no more errors

src/test/java/com/emc/rest/smart/SmartClientTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -115,15 +115,15 @@ public void testConnTimeout() throws Exception {
115115
HttpParams httpParams = new BasicHttpParams();
116116
HttpConnectionParams.setConnectionTimeout(httpParams, CONNECTION_TIMEOUT_MILLIS);
117117

118-
SmartConfig smartConfig = new SmartConfig("10.4.4.180");
118+
SmartConfig smartConfig = new SmartConfig("8.8.4.4:9020");
119119
smartConfig.setProperty(ApacheHttpClient4Config.PROPERTY_HTTP_PARAMS, httpParams);
120120

121121
final Client client = SmartClientFactory.createStandardClient(smartConfig);
122122

123123
Future future = Executors.newSingleThreadExecutor().submit(new Runnable() {
124124
@Override
125125
public void run() {
126-
client.resource("http://10.4.4.180:9020/?ping").get(String.class);
126+
client.resource("http://8.8.4.4:9020/?ping").get(String.class);
127127
Assert.fail("response was not expected; choose an IP that is not in use");
128128
}
129129
});

0 commit comments

Comments
 (0)