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 2013/03/18 13:43:15 UTC

svn commit: r1457739 - in /river/jtsk/skunk/qa_refactor/trunk: qa/src/com/sun/jini/test/impl/outrigger/leasing/ src/com/sun/jini/outrigger/

Author: peter_firmstone
Date: Mon Mar 18 12:43:15 2013
New Revision: 1457739

URL: http://svn.apache.org/r1457739
Log:
Doubled callbackWait period in UseNotifyLeaseTestRenew.

Modified:
    river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/LeasedSpaceListener.java
    river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UseNotifyLeaseTest.java
    river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UseNotifyLeaseTestRenew.td
    river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UseTxnMgrLeaseTest.java
    river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UseTxnMgrSpaceLeaseTest.java
    river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UserSpaceLeaseTest.java
    river/jtsk/skunk/qa_refactor/trunk/src/com/sun/jini/outrigger/OutriggerServerImpl.java
    river/jtsk/skunk/qa_refactor/trunk/src/com/sun/jini/outrigger/SpaceProxy2.java

Modified: river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/LeasedSpaceListener.java
URL: http://svn.apache.org/viewvc/river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/LeasedSpaceListener.java?rev=1457739&r1=1457738&r2=1457739&view=diff
==============================================================================
--- river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/LeasedSpaceListener.java (original)
+++ river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/LeasedSpaceListener.java Mon Mar 18 12:43:15 2013
@@ -49,8 +49,8 @@ public class LeasedSpaceListener
     implements RemoteEventListener, ServerProxyTrust, Serializable
 {
     private static Logger logger = Logger.getLogger("com.sun.jini.qa.harness");
-    public boolean received = false;
-    private Object proxy;
+    private boolean received = false;
+    private final Object proxy;
 
     public LeasedSpaceListener(Configuration c) throws RemoteException {
 	try {
@@ -81,4 +81,18 @@ public class LeasedSpaceListener
         received = true;
         this.notifyAll();
     }
+
+    /**
+     * @return the received
+     */
+    public synchronized boolean isReceived() {
+        return received;
+    }
+
+    /**
+     * @param received the received to set
+     */
+    public synchronized void setReceived(boolean received) {
+        this.received = received;
+    }
 }

Modified: river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UseNotifyLeaseTest.java
URL: http://svn.apache.org/viewvc/river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UseNotifyLeaseTest.java?rev=1457739&r1=1457738&r2=1457739&view=diff
==============================================================================
--- river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UseNotifyLeaseTest.java (original)
+++ river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UseNotifyLeaseTest.java Mon Mar 18 12:43:15 2013
@@ -100,14 +100,12 @@ public class UseNotifyLeaseTest extends 
     private final AtomicInteger count = new AtomicInteger();
 
     protected boolean isAvailable() throws TestException {
-        boolean bReturn = false;
-
         try {
 	    logger.log(Level.FINEST, "Writing entry {0}", count.getAndIncrement());
             LeasedSpaceListener listener = this.listener;
             JavaSpace space = this.space;
             synchronized (listener) { // Can't synchronize on volatile field.
-                listener.received = false;
+                listener.setReceived(false);
 
                 /*
                  * Important to have the write inside the
@@ -115,14 +113,21 @@ public class UseNotifyLeaseTest extends 
                  * listener.received transtion from false->true
                  */
                 addOutriggerLease(space.write(aEntry, null, Lease.ANY), false);
-		logger.log(Level.FINEST, "Waiting for listener to be called at {0}", (new java.util.Date()));
-                listener.wait(callbackWait);
-		logger.log(Level.FINEST, "Wait done at {0}, received = {1}", new Object[]{new java.util.Date(), listener.received});
-                bReturn = listener.received;
+                /* Check for spurious wakeup */
+                long startTime = System.currentTimeMillis();
+                long finishTime = startTime + callbackWait;
+                while (System.currentTimeMillis() < finishTime) {
+                    logger.log(Level.FINEST, "Waiting for listener to be called at {0}", (new java.util.Date()));
+                    listener.wait(callbackWait);
+                    if (listener.isReceived()){
+                        logger.log(Level.FINEST, "Wait done at {0}, received = {1}", new Object[]{new java.util.Date(), listener.isReceived()});
+                        return true;
+                    }
+                }
             }
         } catch (Exception e) {
             throw new TestException("Testing for availability", e);
         }
-        return bReturn;
+        return false;
     }
 }

Modified: river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UseNotifyLeaseTestRenew.td
URL: http://svn.apache.org/viewvc/river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UseNotifyLeaseTestRenew.td?rev=1457739&r1=1457738&r2=1457739&view=diff
==============================================================================
--- river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UseNotifyLeaseTestRenew.td (original)
+++ river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UseNotifyLeaseTestRenew.td Mon Mar 18 12:43:15 2013
@@ -4,3 +4,4 @@ include0=../outrigger.properties
 
 com.sun.jini.test.share.exact=true
 com.sun.jini.test.share.renew=2
+com.sun.jini.test.share.callbackWait=4000
\ No newline at end of file

Modified: river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UseTxnMgrLeaseTest.java
URL: http://svn.apache.org/viewvc/river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UseTxnMgrLeaseTest.java?rev=1457739&r1=1457738&r2=1457739&view=diff
==============================================================================
--- river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UseTxnMgrLeaseTest.java (original)
+++ river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UseTxnMgrLeaseTest.java Mon Mar 18 12:43:15 2013
@@ -47,7 +47,7 @@ import com.sun.jini.test.share.Uninteres
  */
 public class UseTxnMgrLeaseTest extends LeaseUsesTestBase {
     final private Entry aEntry = new UninterestingEntry();
-    private ServerTransaction resource;
+    private volatile ServerTransaction resource;
 
     protected Lease acquireResource() throws TestException {
         specifyServices(new Class[] {

Modified: river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UseTxnMgrSpaceLeaseTest.java
URL: http://svn.apache.org/viewvc/river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UseTxnMgrSpaceLeaseTest.java?rev=1457739&r1=1457738&r2=1457739&view=diff
==============================================================================
--- river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UseTxnMgrSpaceLeaseTest.java (original)
+++ river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UseTxnMgrSpaceLeaseTest.java Mon Mar 18 12:43:15 2013
@@ -44,8 +44,8 @@ import com.sun.jini.test.share.Uninteres
  */
 public class UseTxnMgrSpaceLeaseTest extends LeaseUsesTestBase {
     final private Entry aEntry = new UninterestingEntry();
-    private Transaction resource;
-    private JavaSpace space;
+    private volatile Transaction resource;
+    private volatile JavaSpace space;
 
     protected Lease acquireResource() throws TestException {
         specifyServices(new Class[] {

Modified: river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UserSpaceLeaseTest.java
URL: http://svn.apache.org/viewvc/river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UserSpaceLeaseTest.java?rev=1457739&r1=1457738&r2=1457739&view=diff
==============================================================================
--- river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UserSpaceLeaseTest.java (original)
+++ river/jtsk/skunk/qa_refactor/trunk/qa/src/com/sun/jini/test/impl/outrigger/leasing/UserSpaceLeaseTest.java Mon Mar 18 12:43:15 2013
@@ -39,7 +39,7 @@ import com.sun.jini.test.share.Uninteres
  * Tests binding between leases and entry in JavaSpaces.
  */
 public class UserSpaceLeaseTest extends LeaseUsesTestBase {
-    private Entry resource;
+    private volatile Entry resource;
 
     protected Lease acquireResource() throws TestException {
         specifyServices(new Class[] {

Modified: river/jtsk/skunk/qa_refactor/trunk/src/com/sun/jini/outrigger/OutriggerServerImpl.java
URL: http://svn.apache.org/viewvc/river/jtsk/skunk/qa_refactor/trunk/src/com/sun/jini/outrigger/OutriggerServerImpl.java?rev=1457739&r1=1457738&r2=1457739&view=diff
==============================================================================
--- river/jtsk/skunk/qa_refactor/trunk/src/com/sun/jini/outrigger/OutriggerServerImpl.java (original)
+++ river/jtsk/skunk/qa_refactor/trunk/src/com/sun/jini/outrigger/OutriggerServerImpl.java Mon Mar 18 12:43:15 2013
@@ -2237,7 +2237,7 @@ public class OutriggerServerImpl 
 	 * is scanning the list, it may arrive after getMatch has
 	 * passed that point in the list.  By capturing the last
 	 * current element operationJournal and searching forward from
-	 * their after we do the first traversal we can make sure that 
+	 * there after we do the first traversal, we can make sure that 
 	 * we get any entries the initial search missed
 	 */
 	final OperationJournal.TransitionIterator transitionIterator =

Modified: river/jtsk/skunk/qa_refactor/trunk/src/com/sun/jini/outrigger/SpaceProxy2.java
URL: http://svn.apache.org/viewvc/river/jtsk/skunk/qa_refactor/trunk/src/com/sun/jini/outrigger/SpaceProxy2.java?rev=1457739&r1=1457738&r2=1457739&view=diff
==============================================================================
--- river/jtsk/skunk/qa_refactor/trunk/src/com/sun/jini/outrigger/SpaceProxy2.java (original)
+++ river/jtsk/skunk/qa_refactor/trunk/src/com/sun/jini/outrigger/SpaceProxy2.java Mon Mar 18 12:43:15 2013
@@ -100,7 +100,7 @@ class SpaceProxy2 implements JavaSpace05
     /**
      * Maximum time any sub-query should be allowed to run for.
      */
-    private transient long maxServerQueryTimeout;
+    private transient volatile long maxServerQueryTimeout;
     
 
     /**