You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by or...@apache.org on 2016/09/09 13:27:26 UTC

svn commit: r1760016 - in /qpid/java/trunk: bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/ bdbstore/src/test/java/org/apache/qpid/server/virtualhostnode/berkeleydb/ broker-core/src/test/java/org/apache/qpid/server/queue/ qpid-test-util...

Author: orudyy
Date: Fri Sep  9 13:27:26 2016
New Revision: 1760016

URL: http://svn.apache.org/viewvc?rev=1760016&view=rev
Log:
QPID-7422: Make test timeouts configurable via system properties

Modified:
    qpid/java/trunk/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/BDBHAVirtualHostNodeTest.java
    qpid/java/trunk/bdbstore/src/test/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHAVirtualHostNodeTestHelper.java
    qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/queue/AbstractQueueTestBase.java
    qpid/java/trunk/qpid-test-utils/src/main/java/org/apache/qpid/test/utils/QpidTestCase.java
    qpid/java/trunk/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java
    qpid/java/trunk/systests/src/test/java/org/apache/qpid/server/queue/TimeToLiveTest.java
    qpid/java/trunk/test-profiles/apache-ci.test.overridden.properties

Modified: qpid/java/trunk/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/BDBHAVirtualHostNodeTest.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/BDBHAVirtualHostNodeTest.java?rev=1760016&r1=1760015&r2=1760016&view=diff
==============================================================================
--- qpid/java/trunk/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/BDBHAVirtualHostNodeTest.java (original)
+++ qpid/java/trunk/bdbstore/src/test/java/org/apache/qpid/server/store/berkeleydb/BDBHAVirtualHostNodeTest.java Fri Sep  9 13:27:26 2016
@@ -138,7 +138,7 @@ public class BDBHAVirtualHostNodeTest ex
 
         assertEquals("SYNC,NO_SYNC,SIMPLE_MAJORITY", environmentFacade.getMessageStoreDurability().toString());
 
-        _helper.awaitForVirtualhost(node, 30000);
+        _helper.awaitForVirtualhost(node);
         VirtualHost<?> virtualHost = node.getVirtualHost();
         assertNotNull("Virtual host child was not added", virtualHost);
         assertEquals("Unexpected virtual host name", groupName, virtualHost.getName());
@@ -219,7 +219,7 @@ public class BDBHAVirtualHostNodeTest ex
         attributes.put(BDBHAVirtualHostNode.QUORUM_OVERRIDE, 1);
         node1.setAttributes(attributes);
 
-        _helper.awaitForVirtualhost(node1, 30000);
+        _helper.awaitForVirtualhost(node1);
 
         assertEquals("Unexpected node priority value after mutation", 200, node1.getPriority());
         assertTrue("Unexpected designated primary value after mutation", node1.isDesignatedPrimary());
@@ -376,7 +376,7 @@ public class BDBHAVirtualHostNodeTest ex
         _helper.assertNodeRole(node, NodeRole.MASTER, NodeRole.REPLICA);
         assertEquals("Unexpected node state", State.ACTIVE, node.getState());
 
-        _helper.awaitForVirtualhost(node,30000);
+        _helper.awaitForVirtualhost(node);
         BDBHAVirtualHostImpl virtualHost = (BDBHAVirtualHostImpl)node.getVirtualHost();
         assertNotNull("Virtual host is not created", virtualHost);
 

Modified: qpid/java/trunk/bdbstore/src/test/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHAVirtualHostNodeTestHelper.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/bdbstore/src/test/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHAVirtualHostNodeTestHelper.java?rev=1760016&r1=1760015&r2=1760016&view=diff
==============================================================================
--- qpid/java/trunk/bdbstore/src/test/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHAVirtualHostNodeTestHelper.java (original)
+++ qpid/java/trunk/bdbstore/src/test/java/org/apache/qpid/server/virtualhostnode/berkeleydb/BDBHAVirtualHostNodeTestHelper.java Fri Sep  9 13:27:26 2016
@@ -71,6 +71,9 @@ public class BDBHAVirtualHostNodeTestHel
     private TaskExecutor _taskExecutor;
     private final ConfiguredObjectFactory _objectFactory = BrokerModel.getInstance().getObjectFactory();
     private final Set<BDBHAVirtualHostNode<?>> _nodes = new HashSet<>();
+    private int _numberOfSleeps;
+    private final int _sleepInterval;
+    private int _waitForVirtualhostInterval;
 
     public BDBHAVirtualHostNodeTestHelper(String testName) throws Exception
     {
@@ -85,6 +88,9 @@ public class BDBHAVirtualHostNodeTestHel
 
         _bdbStorePath = new File(QpidTestCase.TMP_FOLDER, _testName + "." + System.currentTimeMillis());
         _bdbStorePath.deleteOnExit();
+        _numberOfSleeps = Integer.getInteger("BDBHAVirtualHostNodeTestHelper.numberOfSleepsOnChangeWaiting", 50);
+        _sleepInterval = Integer.getInteger("BDBHAVirtualHostNodeTestHelper.sleepIntervalOnChangeWaiting", 100);
+        _waitForVirtualhostInterval = Integer.getInteger("BDBHAVirtualHostNodeTestHelper.waitForVirtualhostInterval", 30000);
     }
 
     public void tearDown() throws Exception
@@ -147,7 +153,7 @@ public class BDBHAVirtualHostNodeTestHel
             remoteNodes = node.getRemoteReplicationNodes();
             if (counter > 0)
             {
-                Thread.sleep(100);
+                Thread.sleep(_sleepInterval);
             }
             counter++;
         }
@@ -159,7 +165,7 @@ public class BDBHAVirtualHostNodeTestHel
     public void awaitForAttributeChange(ConfiguredObject<?> object, String name, Object expectedValue) throws InterruptedException
     {
         int awaitCounter = 0;
-        while(!object.equals(object.getAttribute(name)) && awaitCounter < 50)
+        while(!object.equals(object.getAttribute(name)) && awaitCounter < _numberOfSleeps)
         {
             Thread.sleep(100);
             awaitCounter++;
@@ -176,9 +182,9 @@ public class BDBHAVirtualHostNodeTestHel
             replica = findNodeInRole(desiredRole);
             if (replica == null)
             {
-                Thread.sleep(100);
+                Thread.sleep(_sleepInterval);
             }
-            if (findReplicaCount > 50)
+            if (findReplicaCount > _numberOfSleeps)
             {
                 fail("Could not find a node in role " + desiredRole);
             }
@@ -237,11 +243,11 @@ public class BDBHAVirtualHostNodeTestHel
             }
             if (!inRole)
             {
-                Thread.sleep(50);
+                Thread.sleep(_sleepInterval);
             }
             iterationCounter++;
         }
-        while(!inRole && iterationCounter<100);
+        while(!inRole && iterationCounter < _numberOfSleeps);
         assertTrue("Node " + node.getName() + " did not transit into role " + Arrays.toString(roleName)
                 + " Node role is " + node.getRole(), inRole);
     }
@@ -328,9 +334,9 @@ public class BDBHAVirtualHostNodeTestHel
         return permittedNodes;
     }
 
-    public void awaitForVirtualhost(final VirtualHostNode<?> node, final int wait)
+    public void awaitForVirtualhost(final VirtualHostNode<?> node)
     {
-        long endTime = System.currentTimeMillis() + wait;
+        long endTime = System.currentTimeMillis() + _waitForVirtualhostInterval;
         do
         {
             if(node.getVirtualHost() != null)
@@ -339,7 +345,7 @@ public class BDBHAVirtualHostNodeTestHel
             }
             try
             {
-                Thread.sleep(100);
+                Thread.sleep(_sleepInterval);
             }
             catch (InterruptedException e)
             {

Modified: qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/queue/AbstractQueueTestBase.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/queue/AbstractQueueTestBase.java?rev=1760016&r1=1760015&r2=1760016&view=diff
==============================================================================
--- qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/queue/AbstractQueueTestBase.java (original)
+++ qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/queue/AbstractQueueTestBase.java Fri Sep  9 13:27:26 2016
@@ -71,7 +71,7 @@ import org.apache.qpid.test.utils.QpidTe
 abstract class AbstractQueueTestBase extends QpidTestCase
 {
     private static final Logger _logger = LoggerFactory.getLogger(AbstractQueueTestBase.class);
-    private static final long QUEUE_RUNNER_WAIT_TIME = Long.getLong("AbstractQueueTestBase.queueRunnerWaitTime", 150L);
+    private static final long QUEUE_RUNNER_WAIT_TIME = getLongProperty("AbstractQueueTestBase.queueRunnerWaitTime", 150L);
 
     static
     {

Modified: qpid/java/trunk/qpid-test-utils/src/main/java/org/apache/qpid/test/utils/QpidTestCase.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/qpid-test-utils/src/main/java/org/apache/qpid/test/utils/QpidTestCase.java?rev=1760016&r1=1760015&r2=1760016&view=diff
==============================================================================
--- qpid/java/trunk/qpid-test-utils/src/main/java/org/apache/qpid/test/utils/QpidTestCase.java (original)
+++ qpid/java/trunk/qpid-test-utils/src/main/java/org/apache/qpid/test/utils/QpidTestCase.java Fri Sep  9 13:27:26 2016
@@ -340,4 +340,13 @@ public class QpidTestCase extends TestCa
         }
         return properties;
     }
+
+    protected static long getLongProperty(String propertyName, long defaultValue)
+    {
+        if (OVERRIDDEN_PROPERTIES.containsKey(propertyName))
+        {
+            return Long.parseLong(OVERRIDDEN_PROPERTIES.getProperty(propertyName));
+        }
+        return Long.getLong(propertyName, defaultValue);
+    }
 }

Modified: qpid/java/trunk/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java?rev=1760016&r1=1760015&r2=1760016&view=diff
==============================================================================
--- qpid/java/trunk/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java (original)
+++ qpid/java/trunk/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java Fri Sep  9 13:27:26 2016
@@ -80,7 +80,9 @@ public class QpidBrokerTestCase extends
     public static final String TOPIC = "topic";
     public static final String MANAGEMENT_MODE_PASSWORD = "mm_password";
     protected static final Logger _logger = LoggerFactory.getLogger(QpidBrokerTestCase.class);
-    protected static final long RECEIVE_TIMEOUT = Long.getLong("qpid.test_receive_timeout", 1000L);
+    protected static final long RECEIVE_TIMEOUT = getLongProperty("qpid.test_receive_timeout", 1000L);
+    protected static final long RECEIVE_LONG_TIMEOUT = getLongProperty("qpid.test_receive_long_timeout", 5000L);
+    protected static final long RECEIVE_SHORT_TIMEOUT = getLongProperty("qpid.test_receive_short_timeout", 500L);
     protected static final String INDEX = "index";
     protected static final String CONTENT = "content";
     protected static final int DEFAULT_MESSAGE_SIZE = 1024;

Modified: qpid/java/trunk/systests/src/test/java/org/apache/qpid/server/queue/TimeToLiveTest.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/systests/src/test/java/org/apache/qpid/server/queue/TimeToLiveTest.java?rev=1760016&r1=1760015&r2=1760016&view=diff
==============================================================================
--- qpid/java/trunk/systests/src/test/java/org/apache/qpid/server/queue/TimeToLiveTest.java (original)
+++ qpid/java/trunk/systests/src/test/java/org/apache/qpid/server/queue/TimeToLiveTest.java Fri Sep  9 13:27:26 2016
@@ -157,9 +157,9 @@ public class TimeToLiveTest extends Qpid
 
         //Receive Message 0
         // Set 5s receive time for messages we expect to receive.
-        Message receivedFirst = consumer.receive(5000);
-        Message receivedSecond = consumer.receive(5000);
-        Message receivedThird = consumer.receive(1000);
+        Message receivedFirst = consumer.receive(RECEIVE_LONG_TIMEOUT);
+        Message receivedSecond = consumer.receive(RECEIVE_LONG_TIMEOUT);
+        Message receivedThird = consumer.receive(RECEIVE_SHORT_TIMEOUT);
 
         // Log the messages to help diagnosis incase of failure
         _logger.info("First:"+receivedFirst);
@@ -313,9 +313,9 @@ public class TimeToLiveTest extends Qpid
 
         //Receive Message 0
         // Set 5s receive time for messages we expect to receive.
-        Message receivedFirst = durableSubscriber.receive(5000);
-        Message receivedSecond = durableSubscriber.receive(5000);
-        Message receivedThird = durableSubscriber.receive(1000);
+        Message receivedFirst = durableSubscriber.receive(RECEIVE_LONG_TIMEOUT);
+        Message receivedSecond = durableSubscriber.receive(RECEIVE_LONG_TIMEOUT);
+        Message receivedThird = durableSubscriber.receive(RECEIVE_SHORT_TIMEOUT);
         
         // Log the messages to help diagnosis incase of failure
         _logger.info("First:"+receivedFirst);

Modified: qpid/java/trunk/test-profiles/apache-ci.test.overridden.properties
URL: http://svn.apache.org/viewvc/qpid/java/trunk/test-profiles/apache-ci.test.overridden.properties?rev=1760016&r1=1760015&r2=1760016&view=diff
==============================================================================
--- qpid/java/trunk/test-profiles/apache-ci.test.overridden.properties (original)
+++ qpid/java/trunk/test-profiles/apache-ci.test.overridden.properties Fri Sep  9 13:27:26 2016
@@ -34,3 +34,11 @@ virtualhost.connectionThreadPool.size=4
 virtualhost.connectionThreadPool.numberOfSelectors=1
 port.http.threadPool.maximum=8
 port.http.threadPool.minimum=4
+
+BDBHAVirtualHostNodeTestHelper.numberOfSleepsOnChangeWaiting=100
+BDBHAVirtualHostNodeTestHelper.sleepIntervalOnChangeWaiting=100
+BDBHAVirtualHostNodeTestHelper.waitForVirtualhostInterval=30000
+
+qpid.test_receive_short_timeout=1000
+qpid.test_receive_timeout=2000
+qpid.test_receive_long_timeout=10000



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org