YARN-4909. Fix intermittent failures of TestRMWebServices And TestRMWithCSRFFilter. Contributed by Bibin A Chundatt
(cherry picked from commit fdbafbc9e5
)
This commit is contained in:
parent
eba7ecc993
commit
2213a40f30
|
@ -19,9 +19,10 @@
|
|||
package org.apache.hadoop.yarn.webapp;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.Random;
|
||||
|
||||
import org.apache.hadoop.net.ServerSocketUtil;
|
||||
import org.junit.Before;
|
||||
|
||||
import com.sun.jersey.test.framework.JerseyTest;
|
||||
import com.sun.jersey.test.framework.WebAppDescriptor;
|
||||
|
||||
|
@ -30,9 +31,16 @@ public abstract class JerseyTestBase extends JerseyTest {
|
|||
super(appDescriptor);
|
||||
}
|
||||
|
||||
@Before
|
||||
public void initializeJerseyPort() throws IOException {
|
||||
int jerseyPort = ServerSocketUtil.getPort(9998, 10);
|
||||
System.setProperty("jersey.test.port", Integer.toString(jerseyPort));
|
||||
@Override
|
||||
protected int getPort(int port) {
|
||||
Random rand = new Random();
|
||||
int jerseyPort = port + rand.nextInt(1000);
|
||||
try {
|
||||
jerseyPort = ServerSocketUtil.getPort(jerseyPort, 10);
|
||||
} catch (IOException e) {
|
||||
// Ignore exception even after 10 times free port is
|
||||
// not received.
|
||||
}
|
||||
return super.getPort(jerseyPort);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue