You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@river.apache.org by pe...@apache.org on 2012/11/21 12:23:38 UTC

svn commit: r1412060 - in /river/jtsk/trunk/qa/src/com/sun/jini/test/share: BaseQATest.java DiscoveryProtocolSimulator.java

Author: peter_firmstone
Date: Wed Nov 21 11:23:37 2012
New Revision: 1412060

URL: http://svn.apache.org/viewvc?rev=1412060&view=rev
Log:
Alter Reggie to throw IOException if port selected by ServerSocketFactory doesn't match requested port, or if default port not available - Changes reverted, it would be desirable to have the port required by BaseQATest communicated to Reggie, which currently gets the unicast socket port from configuration.  BaseQATest falls over when port 4160 is already in use.

Modified:
    river/jtsk/trunk/qa/src/com/sun/jini/test/share/BaseQATest.java
    river/jtsk/trunk/qa/src/com/sun/jini/test/share/DiscoveryProtocolSimulator.java

Modified: river/jtsk/trunk/qa/src/com/sun/jini/test/share/BaseQATest.java
URL: http://svn.apache.org/viewvc/river/jtsk/trunk/qa/src/com/sun/jini/test/share/BaseQATest.java?rev=1412060&r1=1412059&r2=1412060&view=diff
==============================================================================
--- river/jtsk/trunk/qa/src/com/sun/jini/test/share/BaseQATest.java (original)
+++ river/jtsk/trunk/qa/src/com/sun/jini/test/share/BaseQATest.java Wed Nov 21 11:23:37 2012
@@ -66,6 +66,7 @@ import java.util.Map;
 import java.util.Properties;
 import java.util.Set;
 import java.util.logging.Level;
+import net.jini.discovery.Constants;
 
 /**
  * This class is an abstract class that contains common functionality 
@@ -1493,10 +1494,10 @@ abstract public class BaseQATest extends
         int port = getConfig().getServiceIntProperty
                                     ("net.jini.core.lookup.ServiceRegistrar",
                                      "port", indx);
-        logger.log(Level.FINEST, "Config property: " + remoteHost + ":" + port);
+        logger.log(Level.FINEST, "Config property: {0}:{1}", new Object[]{remoteHost, port});
         if (port == Integer.MIN_VALUE) {
 	    port = 4160;
-            logger.log(Level.FINEST, "Changing port to: " + port);
+            logger.log(Level.FINEST, "Changing port to: {0}", port);
 	}
 	// used for book keeping only, so don't need a constrainable locator
         return QAConfig.getConstrainedLocator(remoteHost,port);
@@ -1543,7 +1544,7 @@ abstract public class BaseQATest extends
                     Object locGroupsPair = lookupsStarted.get(i);
                     initLookupsToStart.set(i,locGroupsPair);
                     allLookupsToStart.set(i,locGroupsPair);
-                }
+                } 
 		LocatorGroupsPair p = (LocatorGroupsPair) initLookupsToStart.get(i);
 		LookupLocator l = p.locator;
 		logger.log(Level.FINEST, "init locator " + i + " = " + l);
@@ -1587,8 +1588,10 @@ abstract public class BaseQATest extends
                 LocatorGroupsPair pair
                                = (LocatorGroupsPair)addLookupsToStart.get(j);
                 int port = (pair.locator).getPort();
-                if(portInUse(port)) port = 0;
-                startLookup(i,port, pair.locator.getHost());
+                synchronized (lookupsStarted){
+                    if(portInUse(port)) port = 0;
+                    startLookup(i,port, pair.locator.getHost());
+                }
                 if(port == 0) {
                     logger.log(Level.FINEST, "port was equal to zero");
                     Object locGroupsPair = lookupsStarted.get(i);

Modified: river/jtsk/trunk/qa/src/com/sun/jini/test/share/DiscoveryProtocolSimulator.java
URL: http://svn.apache.org/viewvc/river/jtsk/trunk/qa/src/com/sun/jini/test/share/DiscoveryProtocolSimulator.java?rev=1412060&r1=1412059&r2=1412060&view=diff
==============================================================================
--- river/jtsk/trunk/qa/src/com/sun/jini/test/share/DiscoveryProtocolSimulator.java (original)
+++ river/jtsk/trunk/qa/src/com/sun/jini/test/share/DiscoveryProtocolSimulator.java Wed Nov 21 11:23:37 2012
@@ -574,19 +574,11 @@ public class DiscoveryProtocolSimulator 
 	    if (port == 0) {
 		try {
 		    listen = new ServerSocket(Constants.discoveryPort);
-		} catch (BindException e){
-                    try {
-                        Thread.sleep(240000); // TIME_WAIT
-                        listen = new ServerSocket(Constants.discoveryPort); // Try again.
-                    } catch (IOException ex){
-                        logger.log(Level.FINE, "Failed to bind to default port", ex);
-                    } catch (InterruptedException ex){
-                        ex.fillInStackTrace();
-                        throw new IOException("Interrupted while trying to open a ServerSocket", ex);
-                    }
+                } catch (IOException ex){
+                    logger.log(Level.FINE, "Failed to bind to default port", ex);
                 }
-	    }
-	    if (listen == null) {
+	    } 
+            if (listen == null) {
                 try {
                     listen = new ServerSocket(port);
                 } catch (BindException e){