You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by lq...@apache.org on 2017/09/21 14:04:11 UTC

qpid-broker-j git commit: QPID-7564: [Java Broker, Perftests] Add competing consumer test case to defaultTests.js

Repository: qpid-broker-j
Updated Branches:
  refs/heads/master b39d49135 -> 1aac6abe0


QPID-7564: [Java Broker, Perftests] Add competing consumer test case to defaultTests.js


Project: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/commit/1aac6abe
Tree: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/tree/1aac6abe
Diff: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/diff/1aac6abe

Branch: refs/heads/master
Commit: 1aac6abe0763b09387166a100d00cddf4f0f2317
Parents: b39d491
Author: Lorenz Quack <lq...@apache.org>
Authored: Thu Sep 21 14:26:59 2017 +0100
Committer: Lorenz Quack <lq...@apache.org>
Committed: Thu Sep 21 15:04:00 2017 +0100

----------------------------------------------------------------------
 .../combined_competing_consumers_plain.chartdef | 48 ++++++++++++++++++++
 perftests/etc/testdefs/defaultTests.js          | 43 +++++++++++++++++-
 .../test/resources/jms-client/jndi.properties   |  3 ++
 .../resources/qpid-jms-client/jndi.properties   |  3 ++
 4 files changed, 96 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/1aac6abe/perftests/etc/chartdefs/timeseries/combined_competing_consumers_plain.chartdef
----------------------------------------------------------------------
diff --git a/perftests/etc/chartdefs/timeseries/combined_competing_consumers_plain.chartdef b/perftests/etc/chartdefs/timeseries/combined_competing_consumers_plain.chartdef
new file mode 100644
index 0000000..16a0313
--- /dev/null
+++ b/perftests/etc/chartdefs/timeseries/combined_competing_consumers_plain.chartdef
@@ -0,0 +1,48 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+chartType=TIMELINE
+chartTitle=Competing Consumers AMQP ${qpid.charting.protocolVersion} plain
+chartDescription=1 Auto-Ack Producer 10 Transacted Competing Consumers (no prefetch), transient, 1kB message, plain, ${qpid.charting.brokerVersionA} / ${qpid.charting.brokerVersionB} / ${qpid.charting.brokerVersionC} / ${qpid.charting.brokerVersionD}
+
+yAxisLowerBound=5000
+yAxisUpperBound=100000
+
+xAxisTitle=Date
+yAxisTitle=Messages Per Second
+
+series.1.statement=SELECT insertedTimestamp, throughputMessagesPerS FROM RESULTS WHERE participantName = 'All' AND testName = 'competing_consumers_plain' AND providerVersion LIKE '%${qpid.charting.brokerVersionA}%' AND protocolVersion = '${qpid.charting.protocolVersion}'
+series.1.colourName=blue
+series.1.shape=cross
+series.1.legend=${qpid.charting.brokerVersionA}
+
+series.2.statement=SELECT insertedTimestamp, throughputMessagesPerS FROM RESULTS WHERE participantName = 'All' AND testName = 'competing_consumers_plain' AND providerVersion LIKE '%${qpid.charting.brokerVersionB}%' AND protocolVersion = '${qpid.charting.protocolVersion}'
+series.2.colourName=red
+series.2.shape=cross
+series.2.legend=${qpid.charting.brokerVersionB}
+
+series.3.statement=SELECT insertedTimestamp, throughputMessagesPerS FROM RESULTS WHERE participantName = 'All' AND testName = 'competing_consumers_plain' AND providerVersion LIKE '%${qpid.charting.brokerVersionC}%' AND protocolVersion = '${qpid.charting.protocolVersion}'
+series.3.colourName=dark_green
+series.3.shape=cross
+series.3.legend=${qpid.charting.brokerVersionC}
+
+series.4.statement=SELECT insertedTimestamp, throughputMessagesPerS FROM RESULTS WHERE participantName = 'All' AND testName = 'competing_consumers_plain' AND providerVersion LIKE '%${qpid.charting.brokerVersionD}%' AND protocolVersion = '${qpid.charting.protocolVersion}'
+series.4.colourName=dark_yellow
+series.4.shape=cross
+series.4.legend=${qpid.charting.brokerVersionD}

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/1aac6abe/perftests/etc/testdefs/defaultTests.js
----------------------------------------------------------------------
diff --git a/perftests/etc/testdefs/defaultTests.js b/perftests/etc/testdefs/defaultTests.js
index 2bd1098..6d9fa5c 100644
--- a/perftests/etc/testdefs/defaultTests.js
+++ b/perftests/etc/testdefs/defaultTests.js
@@ -106,6 +106,44 @@ function createTest(name, numberOfParticipantPairs, acknowledgeMode, deliveryMod
     return test;
 }
 
+function createCompetingConsumerTest(name, numberOfParticipantPairs, transport)
+{
+    var destination = "testQueue_competing";
+    var test = {
+        "_name": name,
+        "_queues": [{
+            "_name": destination,
+            "_durable": true
+        }],
+        "_clients": []
+    };
+
+    var connectionFactory;
+    if (transport.toLowerCase() === "plain")
+    {
+        connectionFactory = "connectionfactory_noprefetch";
+    }
+    else if (transport.toLowerCase() === "ssl")
+    {
+        connectionFactory = "sslconnectionfactory_noprefetch";
+    }
+
+    test._clients.push({
+        "_name": "producingClient",
+        "_connections": [createProducerConnection(0, connectionFactory, destination, ACKNOWLEDGE_MODE_AUTO_ACKNOWLEDGE, DELIVERY_MODE_TRANSIENT)]
+    });
+
+    for (var i = 0; i < numberOfParticipantPairs; i++)
+    {
+        test._clients.push({
+            "_name": "consumingClient_" + i,
+            "_connections": [createConsumerConnection(i, connectionFactory, destination, ACKNOWLEDGE_MODE_SESSION_TRANSACTED)]
+        });
+    }
+
+    return test;
+}
+
 var jsonObject = {
     _tests: [
         createTest("persistent_transaction_plain",
@@ -137,7 +175,10 @@ var jsonObject = {
             numberOfParticipantPairs,
             ACKNOWLEDGE_MODE_SESSION_TRANSACTED,
             DELIVERY_MODE_TRANSIENT,
-            "SSL")
+            "SSL"),
+        createCompetingConsumerTest("competing_consumers_plain",
+            numberOfParticipantPairs,
+            "PLAIN")
     ]
 };
 

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/1aac6abe/perftests/src/test/resources/jms-client/jndi.properties
----------------------------------------------------------------------
diff --git a/perftests/src/test/resources/jms-client/jndi.properties b/perftests/src/test/resources/jms-client/jndi.properties
index 264c691..bdcc647 100644
--- a/perftests/src/test/resources/jms-client/jndi.properties
+++ b/perftests/src/test/resources/jms-client/jndi.properties
@@ -21,6 +21,9 @@
 connectionfactory.connectionfactory = amqp://${perftests.messaging-user}:${perftests.messaging-password}@clientid/?brokerlist='${perftests.messaging-hostport-plain}'
 connectionfactory.sslconnectionfactory = amqp://${perftests.messaging-user}:${perftests.messaging-password}@clientid/?ssl='true'&brokerlist='${perftests.messaging-hostport-tls}'
 
+connectionfactory.connectionfactory_noprefetch = amqp://${perftests.messaging-user}:${perftests.messaging-password}@clientid/?brokerlist='${perftests.messaging-hostport-plain}'&maxprefetch='0'
+connectionfactory.sslconnectionfactory_noprefetch = amqp://${perftests.messaging-user}:${perftests.messaging-password}@clientid/?ssl='true'&brokerlist='${perftests.messaging-hostport-tls}'&maxprefetch='0'
+
 queue.controllerqueue = controllerqueue
 
 jdbcDriverClass=org.apache.derby.jdbc.EmbeddedDriver

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/1aac6abe/perftests/src/test/resources/qpid-jms-client/jndi.properties
----------------------------------------------------------------------
diff --git a/perftests/src/test/resources/qpid-jms-client/jndi.properties b/perftests/src/test/resources/qpid-jms-client/jndi.properties
index 8c101f1..f83916c 100644
--- a/perftests/src/test/resources/qpid-jms-client/jndi.properties
+++ b/perftests/src/test/resources/qpid-jms-client/jndi.properties
@@ -21,6 +21,9 @@
 connectionfactory.connectionfactory = amqp://${perftests.messaging-hostport-plain}/?jms.username=${perftests.messaging-user}&jms.password=${perftests.messaging-password}&jms.forceAsyncAcks=true
 connectionfactory.sslconnectionfactory = amqps://${perftests.messaging-hostport-tls}/?jms.username=${perftests.messaging-user}&jms.password=${perftests.messaging-password}&jms.forceAsyncAcks=true
 
+connectionfactory.connectionfactory_noprefetch = amqp://${perftests.messaging-hostport-plain}/?jms.username=${perftests.messaging-user}&jms.password=${perftests.messaging-password}&jms.forceAsyncAcks=true&jms.prefetchPolicy.all=0
+connectionfactory.sslconnectionfactory_noprefetch = amqps://${perftests.messaging-hostport-tls}/?jms.username=${perftests.messaging-user}&jms.password=${perftests.messaging-password}&jms.forceAsyncAcks=true&jms.prefetchPolicy.all=0
+
 queue.controllerqueue = controllerqueue
 
 jdbcDriverClass=org.apache.derby.jdbc.EmbeddedDriver


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