Description
If takenRandomPorts.contains(port) == true, it means port conflict, so randomFreePort() should rerun the loop. But continue statement leads to exit the loop, because port != 0.
hbase-server/src/test/java/org/apache/hadoop/hbase/HBaseTestingUtility.java
public static int randomFreePort() { int port = 0; do { port = randomPort(); if (takenRandomPorts.contains(port)) { continue; } takenRandomPorts.add(port); ... } while (port == 0); return port; }