summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKeith Wall <kwall@apache.org>2012-04-26 16:52:00 +0000
committerKeith Wall <kwall@apache.org>2012-04-26 16:52:00 +0000
commit2f5999a049b1db7f559aadf268f3266a21eddc1e (patch)
tree845265b10baa610fbf38c25fbe4388c649fd1c80
parent388111eea642abc32744a41684dd4c4dc141b4b0 (diff)
downloadqpid-python-2f5999a049b1db7f559aadf268f3266a21eddc1e.tar.gz
QPID-3936: Produce aggregated batchSize and bring acknowledgeMode through to CSV file
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1330959 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--qpid/java/perftests/src/main/java/org/apache/qpid/disttest/client/ConsumerParticipant.java5
-rw-r--r--qpid/java/perftests/src/main/java/org/apache/qpid/disttest/client/ParticipantResultFactory.java11
-rw-r--r--qpid/java/perftests/src/main/java/org/apache/qpid/disttest/client/ProducerParticipant.java6
-rw-r--r--qpid/java/perftests/src/main/java/org/apache/qpid/disttest/jms/ClientJmsDelegate.java14
-rw-r--r--qpid/java/perftests/src/main/java/org/apache/qpid/disttest/message/ParticipantAttribute.java1
-rw-r--r--qpid/java/perftests/src/main/java/org/apache/qpid/disttest/message/ParticipantResult.java17
-rw-r--r--qpid/java/perftests/src/main/java/org/apache/qpid/disttest/results/aggregation/ParticipantResultAggregator.java12
-rw-r--r--qpid/java/perftests/src/main/java/org/apache/qpid/disttest/results/aggregation/TestResultAggregator.java60
-rw-r--r--qpid/java/perftests/src/test/java/org/apache/qpid/disttest/client/ConsumerParticipantTest.java17
-rw-r--r--qpid/java/perftests/src/test/java/org/apache/qpid/disttest/client/ParticipantResultFactoryTest.java13
-rw-r--r--qpid/java/perftests/src/test/java/org/apache/qpid/disttest/client/ParticipantTestHelper.java18
-rw-r--r--qpid/java/perftests/src/test/java/org/apache/qpid/disttest/client/ProducerParticipantTest.java22
-rw-r--r--qpid/java/perftests/src/test/java/org/apache/qpid/disttest/message/ParticipantResultTest.java6
-rw-r--r--qpid/java/perftests/src/test/java/org/apache/qpid/disttest/results/aggregation/ParticipantResultAggregatorTest.java67
-rw-r--r--qpid/java/perftests/src/test/java/org/apache/qpid/disttest/results/aggregation/TestResultAggregatorTest.java26
-rw-r--r--qpid/java/perftests/src/test/java/org/apache/qpid/disttest/results/formatting/CSVFormaterTest.java12
-rw-r--r--qpid/java/perftests/src/test/java/org/apache/qpid/disttest/results/formatting/expectedOutput.csv4
17 files changed, 234 insertions, 77 deletions
diff --git a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/client/ConsumerParticipant.java b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/client/ConsumerParticipant.java
index 7d68a8d84c..1b5e8276c2 100644
--- a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/client/ConsumerParticipant.java
+++ b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/client/ConsumerParticipant.java
@@ -65,6 +65,7 @@ public class ConsumerParticipant implements Participant
public ParticipantResult doIt(String registeredClientName) throws Exception
{
final Date start = new Date();
+ final int acknowledgeMode = _jmsDelegate.getAcknowledgeMode(_command.getSessionName());
if (_command.getMaximumDuration() == 0 && _command.getNumberOfMessages() == 0)
{
@@ -100,11 +101,11 @@ public class ConsumerParticipant implements Participant
getName(),
registeredClientName,
_command,
+ acknowledgeMode,
numberOfMessagesSent,
payloadSize,
totalPayloadSize,
- start,
- end);
+ start, end);
return result;
}
diff --git a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/client/ParticipantResultFactory.java b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/client/ParticipantResultFactory.java
index 2e4cda1460..7f6b96b87c 100644
--- a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/client/ParticipantResultFactory.java
+++ b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/client/ParticipantResultFactory.java
@@ -29,11 +29,11 @@ import org.apache.qpid.disttest.message.ProducerParticipantResult;
public class ParticipantResultFactory
{
- public ConsumerParticipantResult createForConsumer(String participantName, String clientRegisteredName, CreateConsumerCommand command, int numberOfMessagesReceived, int payloadSize, long totalPayloadReceived, Date start, Date end)
+ public ConsumerParticipantResult createForConsumer(String participantName, String clientRegisteredName, CreateConsumerCommand command, int acknowledgeMode, int numberOfMessagesReceived, int payloadSize, long totalPayloadReceived, Date start, Date end)
{
ConsumerParticipantResult consumerParticipantResult = new ConsumerParticipantResult();
- setTestProperties(consumerParticipantResult, command, participantName, clientRegisteredName);
+ setTestProperties(consumerParticipantResult, command, participantName, clientRegisteredName, acknowledgeMode);
setTestResultProperties(consumerParticipantResult, numberOfMessagesReceived, payloadSize, totalPayloadReceived, start, end);
consumerParticipantResult.setTopic(command.isTopic());
@@ -48,7 +48,7 @@ public class ParticipantResultFactory
return consumerParticipantResult;
}
- public ProducerParticipantResult createForProducer(String participantName, String clientRegisteredName, CreateProducerCommand command, int numberOfMessagesSent, int payloadSize, long totalPayloadSent, Date start, Date end)
+ public ProducerParticipantResult createForProducer(String participantName, String clientRegisteredName, CreateProducerCommand command, int acknowledgeMode, int numberOfMessagesSent, int payloadSize, long totalPayloadSent, Date start, Date end)
{
final ProducerParticipantResult producerParticipantResult = new ProducerParticipantResult();
@@ -61,7 +61,7 @@ public class ParticipantResultFactory
producerParticipantResult.setTotalNumberOfProducers(1);
- setTestProperties(producerParticipantResult, command, participantName, clientRegisteredName);
+ setTestProperties(producerParticipantResult, command, participantName, clientRegisteredName, acknowledgeMode);
setTestResultProperties(producerParticipantResult, numberOfMessagesSent, payloadSize, totalPayloadSent, start, end);
@@ -77,12 +77,13 @@ public class ParticipantResultFactory
participantResult.setEndDate(end);
}
- private void setTestProperties(final ParticipantResult participantResult, CreateParticpantCommand command, String participantName, String clientRegisteredName)
+ private void setTestProperties(final ParticipantResult participantResult, CreateParticpantCommand command, String participantName, String clientRegisteredName, int acknowledgeMode)
{
participantResult.setParticipantName(participantName);
participantResult.setRegisteredClientName(clientRegisteredName);
participantResult.setBatchSize(command.getBatchSize());
participantResult.setMaximumDuration(command.getMaximumDuration());
+ participantResult.setAcknowledgeMode(acknowledgeMode);
}
diff --git a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/client/ProducerParticipant.java b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/client/ProducerParticipant.java
index d40a62f947..bcad81b4aa 100644
--- a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/client/ProducerParticipant.java
+++ b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/client/ProducerParticipant.java
@@ -57,6 +57,8 @@ public class ProducerParticipant implements Participant
throw new DistributedTestException("number of messages and duration cannot both be zero");
}
+ int acknowledgeMode = _jmsDelegate.getAcknowledgeMode(_command.getSessionName());
+
long expectedDuration = _command.getMaximumDuration() - _command.getStartDelay();
doSleepForStartDelay();
@@ -126,9 +128,9 @@ public class ProducerParticipant implements Participant
getName(),
registeredClientName,
_command,
+ acknowledgeMode,
numberOfMessagesSent,
- payloadSize,
- totalPayloadSizeOfAllMessagesSent, start, end);
+ payloadSize, totalPayloadSizeOfAllMessagesSent, start, end);
}
private int getPayloadSizeForResultIfConstantOrZeroOtherwise(NavigableSet<Integer> allPayloadSizes)
diff --git a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/jms/ClientJmsDelegate.java b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/jms/ClientJmsDelegate.java
index 282b933607..d68fc86a0e 100644
--- a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/jms/ClientJmsDelegate.java
+++ b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/jms/ClientJmsDelegate.java
@@ -360,6 +360,20 @@ public class ClientJmsDelegate
}
}
+ public int getAcknowledgeMode(final String sessionName)
+ {
+ try
+ {
+ final Session session = _testSessions.get(sessionName);
+ return session.getAcknowledgeMode();
+ }
+ catch (final JMSException jmse)
+ {
+ throw new DistributedTestException("Unable to determine acknowledgement mode for session: " +
+ sessionName, jmse);
+ }
+ }
+
public Message sendNextMessage(final CreateProducerCommand command)
{
Message sentMessage = null;
diff --git a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/message/ParticipantAttribute.java b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/message/ParticipantAttribute.java
index 96bc4183de..ccc7c0d9fb 100644
--- a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/message/ParticipantAttribute.java
+++ b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/message/ParticipantAttribute.java
@@ -37,6 +37,7 @@ public enum ParticipantAttribute
PAYLOAD_SIZE("payloadSizeB"),
PRIORITY("priority"),
TIME_TO_LIVE("timeToLiveMs"),
+ ACKNOWLEDGE_MODE("acknowledgeMode"),
DELIVERY_MODE("deliveryMode"),
BATCH_SIZE("batchSize"),
MAXIMUM_DURATION("maximumDurationMs"),
diff --git a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/message/ParticipantResult.java b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/message/ParticipantResult.java
index 576babf7a8..a6d3d91bae 100644
--- a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/message/ParticipantResult.java
+++ b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/message/ParticipantResult.java
@@ -36,11 +36,12 @@ public class ParticipantResult extends Response
{
private String _testName;
private String _participantName;
+ private int _iterationNumber;
+
private long _startInMillis;
private long _endInMillis;
private int _batchSize;
private long _maximumDuration;
- private int _iterationNumber;
private String _configuredClientName;
@@ -52,6 +53,9 @@ public class ParticipantResult extends Response
private int _totalNumberOfConsumers;
private int _totalNumberOfProducers;
+ // As Session.SESSION_TRANSACTED is 0, we use value -1 so we can distinguish the case where an aggregated result
+ // summarizes results from participants using different session acknowledge modes.
+ private int _acknowledgeMode = -1;
public static final Comparator<? super ParticipantResult> PARTICIPANT_NAME_COMPARATOR = new Comparator<ParticipantResult>()
{
@@ -254,4 +258,15 @@ public class ParticipantResult extends Response
return _totalNumberOfProducers;
}
+ @OutputAttribute(attribute=ParticipantAttribute.ACKNOWLEDGE_MODE)
+ public int getAcknowledgeMode()
+ {
+ return _acknowledgeMode;
+ }
+
+ public void setAcknowledgeMode(int acknowledgeMode)
+ {
+ _acknowledgeMode = acknowledgeMode;
+ }
+
}
diff --git a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/results/aggregation/ParticipantResultAggregator.java b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/results/aggregation/ParticipantResultAggregator.java
index 603f475a16..207d0131eb 100644
--- a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/results/aggregation/ParticipantResultAggregator.java
+++ b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/results/aggregation/ParticipantResultAggregator.java
@@ -40,6 +40,8 @@ public class ParticipantResultAggregator
private NavigableSet<Integer> _encounteredPayloadSizes = new TreeSet<Integer>();
private NavigableSet<Integer> _encounteredIterationNumbers = new TreeSet<Integer>();
+ private NavigableSet<Integer> _encounteredBatchSizes = new TreeSet<Integer>();
+ private NavigableSet<Integer> _encounteredAcknowledgeMode = new TreeSet<Integer>();
private NavigableSet<String> _encountedTestNames = new TreeSet<String>();
public ParticipantResultAggregator(Class<? extends ParticipantResult> targetClass, String aggregateResultName)
@@ -90,6 +92,8 @@ public class ParticipantResultAggregator
}
_encounteredPayloadSizes.add(result.getPayloadSize());
_encounteredIterationNumbers.add(result.getIterationNumber());
+ _encounteredBatchSizes.add(result.getBatchSize());
+ _encounteredAcknowledgeMode.add(result.getAcknowledgeMode());
}
private void setComputedVariableAttributes(ParticipantResult aggregatedResult)
@@ -117,6 +121,14 @@ public class ParticipantResultAggregator
{
aggregatedResult.setTestName(_encountedTestNames.first());
}
+ if (_encounteredBatchSizes.size() == 1)
+ {
+ aggregatedResult.setBatchSize(_encounteredBatchSizes.first());
+ }
+ if (_encounteredAcknowledgeMode.size() == 1)
+ {
+ aggregatedResult.setAcknowledgeMode(_encounteredAcknowledgeMode.first());
+ }
}
private double calculateThroughputInKiloBytesPerSecond()
diff --git a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/results/aggregation/TestResultAggregator.java b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/results/aggregation/TestResultAggregator.java
index ac0e146635..5934e0e997 100644
--- a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/results/aggregation/TestResultAggregator.java
+++ b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/results/aggregation/TestResultAggregator.java
@@ -31,36 +31,52 @@ public class TestResultAggregator
public AggregatedTestResult aggregateTestResult(ITestResult originalTestResult)
{
- AggregatedTestResult newTestResult = new AggregatedTestResult(originalTestResult);
+ ParticipantResultAggregator consumerResultAggregator = new ParticipantResultAggregator(ConsumerParticipantResult.class,
+ ALL_CONSUMER_PARTICIPANTS_NAME);
+ ParticipantResultAggregator producerResultAggregator = new ParticipantResultAggregator(ProducerParticipantResult.class,
+ ALL_PRODUCER_PARTICIPANTS_NAME);
+ ParticipantResultAggregator aggregatedResultsAggregator = new ParticipantResultAggregator(ParticipantResult.class,
+ ALL_PARTICIPANTS_NAME);
- ParticipantResultAggregator consumerParticipantResultAggregator = new ParticipantResultAggregator(ConsumerParticipantResult.class,
- ALL_CONSUMER_PARTICIPANTS_NAME);
- ParticipantResultAggregator producerParticipantResultAggregator = new ParticipantResultAggregator(ProducerParticipantResult.class,
- ALL_PRODUCER_PARTICIPANTS_NAME);
+ boolean hasError = aggregateOriginalResults(originalTestResult,
+ consumerResultAggregator,
+ producerResultAggregator);
- boolean hasError = aggregate(originalTestResult,
- consumerParticipantResultAggregator,
- producerParticipantResultAggregator);
+ ParticipantResult aggregatedProducerResult = producerResultAggregator.getAggregatedResult();
+ ParticipantResult aggregaredConsumerResult = consumerResultAggregator.getAggregatedResult();
- ParticipantResult aggregatedProducerResult = producerParticipantResultAggregator.getAggregatedResult();
- newTestResult.setAllProducerParticipantResult(aggregatedProducerResult);
+ ParticipantResult aggregatedAllResult = aggregateAggregatedResults(
+ aggregatedResultsAggregator, aggregatedProducerResult,
+ aggregaredConsumerResult);
- ParticipantResult aggregaredConsumerResult = consumerParticipantResultAggregator.getAggregatedResult();
- newTestResult.setAllConsumerParticipantResult(aggregaredConsumerResult);
-
- ParticipantResult aggregatedAllResult = buildAllResultFromOtherAggregatedResults(
+ applyNonAggregateablesToAll(aggregatedAllResult,
aggregatedProducerResult, aggregaredConsumerResult);
+ AggregatedTestResult newTestResult = new AggregatedTestResult(originalTestResult);
+ newTestResult.setAllProducerParticipantResult(aggregatedProducerResult);
+ newTestResult.setAllConsumerParticipantResult(aggregaredConsumerResult);
+ newTestResult.setAllParticipantResult(aggregatedAllResult);
+
if (hasError)
{
aggregatedAllResult.setErrorMessage(TestResultAggregator.AGGREGATED_ERROR_MESSAGE);
}
- newTestResult.setAllParticipantResult(aggregatedAllResult);
return newTestResult;
}
- private boolean aggregate(ITestResult originalTestResult,
+ private ParticipantResult aggregateAggregatedResults(
+ ParticipantResultAggregator aggregatedResultsAggregator,
+ ParticipantResult aggregatedProducerResult,
+ ParticipantResult aggregaredConsumerResult)
+ {
+ aggregatedResultsAggregator.aggregate(aggregatedProducerResult);
+ aggregatedResultsAggregator.aggregate(aggregaredConsumerResult);
+ ParticipantResult aggregatedAllResult = aggregatedResultsAggregator.getAggregatedResult();
+ return aggregatedAllResult;
+ }
+
+ private boolean aggregateOriginalResults(ITestResult originalTestResult,
ParticipantResultAggregator consumerParticipantResultAggregator,
ParticipantResultAggregator producerParticipantResultAggregator)
{
@@ -78,23 +94,13 @@ public class TestResultAggregator
return hasError;
}
- private ParticipantResult buildAllResultFromOtherAggregatedResults(
- ParticipantResult aggregatedProducerResult, ParticipantResult aggregatedConsumerResult)
+ private void applyNonAggregateablesToAll(ParticipantResult aggregatedAllResult, ParticipantResult aggregatedProducerResult, ParticipantResult aggregatedConsumerResult)
{
- ParticipantResult aggregatedAllResult = new ParticipantResult(ALL_PARTICIPANTS_NAME);
aggregatedAllResult.setStartDate(aggregatedProducerResult.getStartDate());
-
aggregatedAllResult.setEndDate(aggregatedConsumerResult.getEndDate());
- aggregatedAllResult.setIterationNumber(aggregatedConsumerResult.getIterationNumber());
- aggregatedAllResult.setTestName(aggregatedConsumerResult.getTestName());
aggregatedAllResult.setNumberOfMessagesProcessed(aggregatedConsumerResult.getNumberOfMessagesProcessed());
- aggregatedAllResult.setPayloadSize(aggregatedConsumerResult.getPayloadSize());
aggregatedAllResult.setTotalPayloadProcessed(aggregatedConsumerResult.getTotalPayloadProcessed());
aggregatedAllResult.setThroughput(aggregatedConsumerResult.getThroughput());
- aggregatedAllResult.setTotalNumberOfProducers(aggregatedProducerResult.getTotalNumberOfProducers());
- aggregatedAllResult.setTotalNumberOfConsumers(aggregatedConsumerResult.getTotalNumberOfConsumers());
-
- return aggregatedAllResult;
}
}
diff --git a/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/client/ConsumerParticipantTest.java b/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/client/ConsumerParticipantTest.java
index 8bc7318b0c..ff7cfd2b41 100644
--- a/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/client/ConsumerParticipantTest.java
+++ b/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/client/ConsumerParticipantTest.java
@@ -30,6 +30,7 @@ import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import javax.jms.Message;
+import javax.jms.Session;
import junit.framework.TestCase;
@@ -72,6 +73,7 @@ public class ConsumerParticipantTest extends TestCase
when(_delegate.consumeMessage(PARTICIPANT_NAME1, RECEIVE_TIMEOUT)).thenReturn(_mockMessage);
when(_delegate.calculatePayloadSizeFrom(_mockMessage)).thenReturn(PAYLOAD_SIZE_PER_MESSAGE);
+ when(_delegate.getAcknowledgeMode(SESSION_NAME1)).thenReturn(Session.CLIENT_ACKNOWLEDGE);
_testStartTime = System.currentTimeMillis();
}
@@ -104,7 +106,8 @@ public class ConsumerParticipantTest extends TestCase
ParticipantResult result = _consumerParticipant.doIt(CLIENT_NAME);
- assertExpectedConsumerResults(result, PARTICIPANT_NAME1, CLIENT_NAME, _testStartTime, numberOfMessages, PAYLOAD_SIZE_PER_MESSAGE, totalPayloadSize, null);
+ assertExpectedConsumerResults(result, PARTICIPANT_NAME1, CLIENT_NAME, _testStartTime,
+ Session.CLIENT_ACKNOWLEDGE, null, numberOfMessages, PAYLOAD_SIZE_PER_MESSAGE, totalPayloadSize, null);
_inOrder.verify(_delegate).consumeMessage(PARTICIPANT_NAME1, RECEIVE_TIMEOUT);
_inOrder.verify(_delegate).calculatePayloadSizeFrom(_mockMessage);
@@ -118,7 +121,8 @@ public class ConsumerParticipantTest extends TestCase
ParticipantResult result = _consumerParticipant.doIt(CLIENT_NAME);
- assertExpectedConsumerResults(result, PARTICIPANT_NAME1, CLIENT_NAME, _testStartTime, null, PAYLOAD_SIZE_PER_MESSAGE, null, duration);
+ assertExpectedConsumerResults(result, PARTICIPANT_NAME1, CLIENT_NAME, _testStartTime,
+ Session.CLIENT_ACKNOWLEDGE, null, null, PAYLOAD_SIZE_PER_MESSAGE, null, duration);
verify(_delegate, atLeastOnce()).consumeMessage(PARTICIPANT_NAME1, RECEIVE_TIMEOUT);
verify(_delegate, atLeastOnce()).calculatePayloadSizeFrom(_mockMessage);
@@ -128,13 +132,15 @@ public class ConsumerParticipantTest extends TestCase
public void testReceiveMessagesBatchedSynch() throws Exception
{
int numberOfMessages = 10;
+ final int batchSize = 3;
long totalPayloadSize = PAYLOAD_SIZE_PER_MESSAGE * numberOfMessages;
_command.setNumberOfMessages(numberOfMessages);
- _command.setBatchSize(3);
+ _command.setBatchSize(batchSize);
ParticipantResult result = _consumerParticipant.doIt(CLIENT_NAME);
- assertExpectedConsumerResults(result, PARTICIPANT_NAME1, CLIENT_NAME, _testStartTime, numberOfMessages, PAYLOAD_SIZE_PER_MESSAGE, totalPayloadSize, null);
+ assertExpectedConsumerResults(result, PARTICIPANT_NAME1, CLIENT_NAME, _testStartTime,
+ Session.CLIENT_ACKNOWLEDGE, batchSize, numberOfMessages, PAYLOAD_SIZE_PER_MESSAGE, totalPayloadSize, null);
verify(_delegate, times(numberOfMessages)).consumeMessage(PARTICIPANT_NAME1, RECEIVE_TIMEOUT);
verify(_delegate, times(numberOfMessages)).calculatePayloadSizeFrom(_mockMessage);
@@ -157,7 +163,8 @@ public class ConsumerParticipantTest extends TestCase
final int expectedPayloadResultPayloadSize = 0;
final long totalPayloadSize = firstPayloadSize + secondPayloadSize + thirdPayloadSize;
- assertExpectedConsumerResults(result, PARTICIPANT_NAME1, CLIENT_NAME, _testStartTime, numberOfMessages, expectedPayloadResultPayloadSize, totalPayloadSize, null);
+ assertExpectedConsumerResults(result, PARTICIPANT_NAME1, CLIENT_NAME, _testStartTime,
+ Session.CLIENT_ACKNOWLEDGE, null, numberOfMessages, expectedPayloadResultPayloadSize, totalPayloadSize, null);
verify(_delegate, times(numberOfMessages)).consumeMessage(PARTICIPANT_NAME1, RECEIVE_TIMEOUT);
verify(_delegate, times(numberOfMessages)).calculatePayloadSizeFrom(_mockMessage);
diff --git a/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/client/ParticipantResultFactoryTest.java b/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/client/ParticipantResultFactoryTest.java
index af906b5098..3b21834a5c 100644
--- a/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/client/ParticipantResultFactoryTest.java
+++ b/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/client/ParticipantResultFactoryTest.java
@@ -79,18 +79,21 @@ public class ParticipantResultFactoryTest extends TestCase
int totalNumberOfConsumers = 0;
int totalNumberOfProducers = 1;
+ int acknowledgeMode = 1;
+
ProducerParticipantResult result = _participantResultFactory.createForProducer(PARTICIPANT_NAME,
REGISTERED_CLIENT_NAME,
command,
+ acknowledgeMode,
NUMBER_OF_MESSAGES_PROCESSED,
PAYLOAD_SIZE,
TOTAL_PAYLOAD_PROCESSED,
- START,
- END);
+ START, END);
assertCommonResultProperties(result);
assertEquals(deliveryMode, result.getDeliveryMode());
+ assertEquals(acknowledgeMode, result.getAcknowledgeMode());
assertEquals(priority, result.getPriority());
assertEquals(producerInterval, result.getInterval());
assertEquals(producerStartDelay, result.getStartDelay());
@@ -126,14 +129,16 @@ public class ParticipantResultFactoryTest extends TestCase
int totalNumberOfConsumers = 1;
int totalNumberOfProducers = 0;
+ int acknowledgeMode = 2;
+
ConsumerParticipantResult result = _participantResultFactory.createForConsumer(PARTICIPANT_NAME,
REGISTERED_CLIENT_NAME,
command,
+ acknowledgeMode,
NUMBER_OF_MESSAGES_PROCESSED,
PAYLOAD_SIZE,
TOTAL_PAYLOAD_PROCESSED,
- START,
- END);
+ START, END);
assertCommonResultProperties(result);
diff --git a/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/client/ParticipantTestHelper.java b/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/client/ParticipantTestHelper.java
index fa071881cc..a013cb0a06 100644
--- a/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/client/ParticipantTestHelper.java
+++ b/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/client/ParticipantTestHelper.java
@@ -32,21 +32,22 @@ public class ParticipantTestHelper
assertTrue(message + " " + actual, actual >= minimumExpected);
}
- public static void assertExpectedConsumerResults(ParticipantResult result, String participantName, String registeredClientName, long expectedTestStartTime, Integer expectedNumberOfMessages, Integer expectedPayloadSize, Long expectedTotalPayloadProcessed, Long expectedMinimumExpectedDuration)
+ public static void assertExpectedConsumerResults(ParticipantResult result, String participantName, String registeredClientName, long expectedTestStartTime, int expectedAcknowledgeMode, Integer expectedBatchSize, Integer expectedNumberOfMessages, Integer expectedPayloadSize, Long expectedTotalPayloadProcessed, Long expectedMinimumExpectedDuration)
{
- assertExpectedResults(result, participantName, registeredClientName, expectedTestStartTime, expectedNumberOfMessages, expectedPayloadSize, expectedTotalPayloadProcessed, expectedMinimumExpectedDuration);
+ assertExpectedResults(result, participantName, registeredClientName, expectedTestStartTime,
+ expectedAcknowledgeMode, expectedBatchSize, expectedNumberOfMessages, expectedPayloadSize, expectedTotalPayloadProcessed, expectedMinimumExpectedDuration);
assertEquals("Unexpected number of consumers", 1, result.getTotalNumberOfConsumers());
assertEquals("Unexpected number of producers", 0, result.getTotalNumberOfProducers());
}
- public static void assertExpectedProducerResults(ParticipantResult result, String participantName, String registeredClientName, long expectedTestStartTime, Integer expectedNumberOfMessages, Integer expectedPayloadSize, Long expectedTotalPayloadProcessed, Long expectedMinimumExpectedDuration)
+ public static void assertExpectedProducerResults(ParticipantResult result, String participantName, String registeredClientName, long expectedTestStartTime, int expectedAcknowledgeMode, Integer expectedBatchSize, Integer expectedNumberOfMessages, Integer expectedPayloadSize, Long expectedTotalPayloadProcessed, Long expectedMinimumExpectedDuration)
{
- assertExpectedResults(result, participantName, registeredClientName, expectedTestStartTime, expectedNumberOfMessages, expectedPayloadSize, expectedTotalPayloadProcessed, expectedMinimumExpectedDuration);
+ assertExpectedResults(result, participantName, registeredClientName, expectedTestStartTime, expectedAcknowledgeMode, expectedBatchSize, expectedNumberOfMessages, expectedPayloadSize, expectedTotalPayloadProcessed, expectedMinimumExpectedDuration);
assertEquals("Unexpected number of producers", 1, result.getTotalNumberOfProducers());
assertEquals("Unexpected number of consumers", 0, result.getTotalNumberOfConsumers());
}
- private static void assertExpectedResults(ParticipantResult result, String participantName, String registeredClientName, long expectedTestStartTime, Integer expectedNumberOfMessages, Integer expectedPayloadSize, Long expectedTotalPayloadProcessed, Long expectedMinimumExpectedDuration)
+ private static void assertExpectedResults(ParticipantResult result, String participantName, String registeredClientName, long expectedTestStartTime, int expectedAcknowledgeMode, Integer expectedBatchSize, Integer expectedNumberOfMessages, Integer expectedPayloadSize, Long expectedTotalPayloadProcessed, Long expectedMinimumExpectedDuration)
{
assertFalse(result.hasError());
@@ -55,10 +56,17 @@ public class ParticipantTestHelper
assertAtLeast("start time of result is too low", expectedTestStartTime, result.getStartInMillis());
assertAtLeast("end time of result should be after start time", result.getStartInMillis(), result.getEndInMillis());
+
+ assertEquals("unexpected acknowledge mode", expectedAcknowledgeMode, result.getAcknowledgeMode());
+
if(expectedNumberOfMessages != null)
{
assertEquals("unexpected number of messages", expectedNumberOfMessages.intValue(), result.getNumberOfMessagesProcessed());
}
+ if(expectedBatchSize != null)
+ {
+ assertEquals("unexpected batch size", expectedBatchSize.intValue(), result.getBatchSize());
+ }
if (expectedPayloadSize != null)
{
assertEquals("unexpected payload size", expectedPayloadSize.intValue(), result.getPayloadSize());
diff --git a/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/client/ProducerParticipantTest.java b/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/client/ProducerParticipantTest.java
index c78fc8837c..cf05623e8f 100644
--- a/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/client/ProducerParticipantTest.java
+++ b/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/client/ProducerParticipantTest.java
@@ -29,6 +29,7 @@ import static org.mockito.Mockito.when;
import javax.jms.DeliveryMode;
import javax.jms.Message;
+import javax.jms.Session;
import junit.framework.TestCase;
@@ -69,6 +70,7 @@ public class ProducerParticipantTest extends TestCase
when(_delegate.sendNextMessage(isA(CreateProducerCommand.class))).thenReturn(_mockMessage);
when(_delegate.calculatePayloadSizeFrom(_mockMessage)).thenReturn(PAYLOAD_SIZE_PER_MESSAGE);
+ when(_delegate.getAcknowledgeMode(SESSION_NAME1)).thenReturn(Session.AUTO_ACKNOWLEDGE);
_producer = new ProducerParticipant(_delegate, _command);
@@ -87,7 +89,7 @@ public class ProducerParticipantTest extends TestCase
ParticipantResult result = _producer.doIt(CLIENT_NAME);
long expectedPublishedStartTime = _testStartTime + delay;
- assertExpectedProducerResults(result, PARTICIPANT_NAME1, CLIENT_NAME, expectedPublishedStartTime, numberOfMessages, PAYLOAD_SIZE_PER_MESSAGE, totalPayloadSize, null);
+ assertExpectedProducerResults(result, PARTICIPANT_NAME1, CLIENT_NAME, expectedPublishedStartTime, Session.AUTO_ACKNOWLEDGE, null, numberOfMessages, PAYLOAD_SIZE_PER_MESSAGE, totalPayloadSize, null);
}
@@ -120,7 +122,8 @@ public class ProducerParticipantTest extends TestCase
_command.setDeliveryMode(deliveryMode);
ParticipantResult result = (ParticipantResult) _producer.doIt(CLIENT_NAME);
- assertExpectedProducerResults(result, PARTICIPANT_NAME1, CLIENT_NAME, _testStartTime, numberOfMessages, PAYLOAD_SIZE_PER_MESSAGE, totalPayloadSize, null);
+ assertExpectedProducerResults(result, PARTICIPANT_NAME1, CLIENT_NAME, _testStartTime,
+ Session.AUTO_ACKNOWLEDGE, null, numberOfMessages, PAYLOAD_SIZE_PER_MESSAGE, totalPayloadSize, null);
_inOrder.verify(_delegate).sendNextMessage(isA(CreateProducerCommand.class));
_inOrder.verify(_delegate).calculatePayloadSizeFrom(_mockMessage);
@@ -134,7 +137,8 @@ public class ProducerParticipantTest extends TestCase
_command.setMaximumDuration(duration);
ParticipantResult result = _producer.doIt(CLIENT_NAME);
- assertExpectedProducerResults(result, PARTICIPANT_NAME1, CLIENT_NAME, _testStartTime, null, PAYLOAD_SIZE_PER_MESSAGE, null, duration);
+ assertExpectedProducerResults(result, PARTICIPANT_NAME1, CLIENT_NAME, _testStartTime,
+ Session.AUTO_ACKNOWLEDGE, null, null, PAYLOAD_SIZE_PER_MESSAGE, null, duration);
verify(_delegate, atLeastOnce()).sendNextMessage(isA(CreateProducerCommand.class));
verify(_delegate, atLeastOnce()).calculatePayloadSizeFrom(_mockMessage);
@@ -143,15 +147,17 @@ public class ProducerParticipantTest extends TestCase
public void testSendMessageBatches() throws Exception
{
+ final int batchSize = 3;
final int numberOfMessages = 10;
final int expectedNumberOfCommits = 4; // one for each batch of 3 messages, plus one more at the end of the test for the tenth msg.
long totalPayloadSize = PAYLOAD_SIZE_PER_MESSAGE * numberOfMessages;
_command.setNumberOfMessages(numberOfMessages);
- _command.setBatchSize(3);
+ _command.setBatchSize(batchSize);
ParticipantResult result = _producer.doIt(CLIENT_NAME);
- assertExpectedProducerResults(result, PARTICIPANT_NAME1, CLIENT_NAME, _testStartTime, numberOfMessages, PAYLOAD_SIZE_PER_MESSAGE, totalPayloadSize, null);
+ assertExpectedProducerResults(result, PARTICIPANT_NAME1, CLIENT_NAME, _testStartTime,
+ Session.AUTO_ACKNOWLEDGE, batchSize, numberOfMessages, PAYLOAD_SIZE_PER_MESSAGE, totalPayloadSize, null);
verify(_delegate, times(numberOfMessages)).sendNextMessage(isA(CreateProducerCommand.class));
verify(_delegate, times(numberOfMessages)).calculatePayloadSizeFrom(_mockMessage);
@@ -172,7 +178,8 @@ public class ProducerParticipantTest extends TestCase
_command.setInterval(publishInterval);
ParticipantResult result = _producer.doIt(CLIENT_NAME);
- assertExpectedProducerResults(result, PARTICIPANT_NAME1, CLIENT_NAME, _testStartTime, numberOfMessages, null, totalPayloadSize, expectedTimeToRunTest);
+ assertExpectedProducerResults(result, PARTICIPANT_NAME1, CLIENT_NAME, _testStartTime,
+ Session.AUTO_ACKNOWLEDGE, null, numberOfMessages, null, totalPayloadSize, expectedTimeToRunTest);
verify(_delegate, times(numberOfMessages)).sendNextMessage(isA(CreateProducerCommand.class));
verify(_delegate, times(numberOfMessages)).calculatePayloadSizeFrom(_mockMessage);
@@ -196,7 +203,8 @@ public class ProducerParticipantTest extends TestCase
ParticipantResult result = _producer.doIt(CLIENT_NAME);
final int expectedPayloadResultPayloadSize = 0;
- assertExpectedProducerResults(result, PARTICIPANT_NAME1, CLIENT_NAME, _testStartTime, numberOfMessages, expectedPayloadResultPayloadSize, totalPayloadSize, null);
+ assertExpectedProducerResults(result, PARTICIPANT_NAME1, CLIENT_NAME, _testStartTime,
+ Session.AUTO_ACKNOWLEDGE, null, numberOfMessages, expectedPayloadResultPayloadSize, totalPayloadSize, null);
verify(_delegate, times(numberOfMessages)).sendNextMessage(isA(CreateProducerCommand.class));
verify(_delegate, times(numberOfMessages)).calculatePayloadSizeFrom(_mockMessage);
diff --git a/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/message/ParticipantResultTest.java b/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/message/ParticipantResultTest.java
index 4d636054c1..12731c06f4 100644
--- a/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/message/ParticipantResultTest.java
+++ b/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/message/ParticipantResultTest.java
@@ -70,11 +70,14 @@ public class ParticipantResultTest extends TestCase
int totalNumberOfConsumers = 1;
int totalNumberOfProducers = 1;
+ int acknowledgeMode = 1;
+
result.setParticipantName(participantName);
result.setTestName(testName);
result.setIterationNumber(iterationNumber);
result.setConfiguredClientName(clientConfiguredName);
+ result.setAcknowledgeMode(acknowledgeMode);
result.setNumberOfMessagesProcessed(numberOfMessages);
result.setConfiguredClientName(clientConfiguredName);
result.setBatchSize(batchSize);
@@ -90,6 +93,7 @@ public class ParticipantResultTest extends TestCase
assertEquals(participantName, result.getAttributes().get(PARTICIPANT_NAME));
assertEquals(testName, result.getAttributes().get(TEST_NAME));
+ assertEquals(iterationNumber, result.getAttributes().get(ITERATION_NUMBER));
assertEquals(clientConfiguredName, result.getAttributes().get(CONFIGURED_CLIENT_NAME));
assertEquals(numberOfMessages, result.getAttributes().get(NUMBER_OF_MESSAGES_PROCESSED));
assertEquals(timeTaken, result.getAttributes().get(TIME_TAKEN));
@@ -99,8 +103,8 @@ public class ParticipantResultTest extends TestCase
assertEquals(maximumDuration, result.getAttributes().get(MAXIMUM_DURATION));
assertEquals(totalNumberOfConsumers, result.getAttributes().get(TOTAL_NUMBER_OF_CONSUMERS));
assertEquals(totalNumberOfProducers, result.getAttributes().get(TOTAL_NUMBER_OF_PRODUCERS));
+ assertEquals(acknowledgeMode, result.getAttributes().get(ACKNOWLEDGE_MODE));
assertEquals(errorMessage, result.getAttributes().get(ERROR_MESSAGE));
- assertEquals(iterationNumber, result.getAttributes().get(ITERATION_NUMBER));
}
public void testConsumerParticipantResultAttributes() throws Exception
diff --git a/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/results/aggregation/ParticipantResultAggregatorTest.java b/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/results/aggregation/ParticipantResultAggregatorTest.java
index db30595edd..72743be1d1 100644
--- a/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/results/aggregation/ParticipantResultAggregatorTest.java
+++ b/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/results/aggregation/ParticipantResultAggregatorTest.java
@@ -21,6 +21,8 @@ package org.apache.qpid.disttest.results.aggregation;
import java.util.Date;
+import javax.jms.Session;
+
import org.apache.qpid.disttest.message.ParticipantResult;
import org.apache.qpid.disttest.results.aggregation.ParticipantResultAggregator;
@@ -179,6 +181,71 @@ public class ParticipantResultAggregatorTest extends TestCase
assertEquals(0, aggregratedResult.getPayloadSize());
}
+ public void testConstantBatchSizesRolledUp() throws Exception
+ {
+ final int batchSize = 10;
+
+ ParticipantResult result1 = new ParticipantResult();
+ result1.setBatchSize(batchSize);
+
+ ParticipantResult result2 = new ParticipantResult();
+ result2.setBatchSize(batchSize);
+
+ _aggregator.aggregate(result1);
+ _aggregator.aggregate(result2);
+
+ ParticipantResult aggregratedResult = _aggregator.getAggregatedResult();
+ assertEquals(batchSize, aggregratedResult.getBatchSize());
+ }
+
+ public void testDifferingBatchSizesNotRolledUp() throws Exception
+ {
+ final int batch1Size = 10;
+ final int batch2Size = 20;
+
+ ParticipantResult result1 = new ParticipantResult();
+ result1.setBatchSize(batch1Size);
+
+ ParticipantResult result2 = new ParticipantResult();
+ result2.setBatchSize(batch2Size);
+
+ _aggregator.aggregate(result1);
+ _aggregator.aggregate(result2);
+
+ ParticipantResult aggregratedResult = _aggregator.getAggregatedResult();
+ assertEquals(0, aggregratedResult.getBatchSize());
+ }
+
+ public void testConstantAcknowledgeModesRolledUp() throws Exception
+ {
+ ParticipantResult result1 = new ParticipantResult();
+ result1.setAcknowledgeMode(Session.DUPS_OK_ACKNOWLEDGE);
+
+ ParticipantResult result2 = new ParticipantResult();
+ result2.setAcknowledgeMode(Session.DUPS_OK_ACKNOWLEDGE);
+
+ _aggregator.aggregate(result1);
+ _aggregator.aggregate(result2);
+
+ ParticipantResult aggregratedResult = _aggregator.getAggregatedResult();
+ assertEquals(Session.DUPS_OK_ACKNOWLEDGE, aggregratedResult.getAcknowledgeMode());
+ }
+
+ public void testDifferingAcknowledgeModesNotRolledUp() throws Exception
+ {
+ ParticipantResult result1 = new ParticipantResult();
+ result1.setBatchSize(Session.AUTO_ACKNOWLEDGE);
+
+ ParticipantResult result2 = new ParticipantResult();
+ result2.setBatchSize(Session.SESSION_TRANSACTED);
+
+ _aggregator.aggregate(result1);
+ _aggregator.aggregate(result2);
+
+ ParticipantResult aggregratedResult = _aggregator.getAggregatedResult();
+ assertEquals(-1, aggregratedResult.getAcknowledgeMode());
+ }
+
public void testSumNumberOfConsumerAndProducers() throws Exception
{
final int expectedNumberOfProducers = 1;
diff --git a/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/results/aggregation/TestResultAggregatorTest.java b/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/results/aggregation/TestResultAggregatorTest.java
index 95f01d853a..a803120cc6 100644
--- a/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/results/aggregation/TestResultAggregatorTest.java
+++ b/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/results/aggregation/TestResultAggregatorTest.java
@@ -61,6 +61,8 @@ public class TestResultAggregatorTest extends TestCase
private static final int EXPECTED_NUMBER_OF_AGGREGATED_RESULTS = 3;
+ private static final int BATCH_SIZE = 3;
+
private TestResultAggregator _aggregator = new TestResultAggregator();
public void testAggregateResultsForTwoConsumerAndOneProducer() throws Exception
@@ -76,19 +78,19 @@ public class TestResultAggregatorTest extends TestCase
assertEquals(expectedNumberOfResults, aggregatedTestResult.getParticipantResults().size());
assertMinimalAggregatedResults(
- aggregatedTestResult.getAllParticipantResult(),
+ aggregatedTestResult.getAllConsumerParticipantResult(),
TEST1_NAME, TEST1_ITERATION_NUMBER,
- NUMBER_OF_MESSAGES_CONSUMED_IN_TOTAL, 2, 1);
+ BATCH_SIZE, NUMBER_OF_MESSAGES_CONSUMED_IN_TOTAL, 2, 0);
assertMinimalAggregatedResults(
- aggregatedTestResult.getAllConsumerParticipantResult(),
+ aggregatedTestResult.getAllProducerParticipantResult(),
TEST1_NAME, TEST1_ITERATION_NUMBER,
- NUMBER_OF_MESSAGES_CONSUMED_IN_TOTAL, 2, 0);
+ BATCH_SIZE, NUMBER_OF_MESSAGES_PRODUCED, 0, 1);
assertMinimalAggregatedResults(
- aggregatedTestResult.getAllProducerParticipantResult(),
+ aggregatedTestResult.getAllParticipantResult(),
TEST1_NAME, TEST1_ITERATION_NUMBER,
- NUMBER_OF_MESSAGES_PRODUCED, 0, 1);
+ BATCH_SIZE, NUMBER_OF_MESSAGES_CONSUMED_IN_TOTAL, 2, 1);
}
public void testAggregateResultsWhenParticipantErrored()
@@ -103,10 +105,11 @@ public class TestResultAggregatorTest extends TestCase
assertEquals(TestResultAggregator.AGGREGATED_ERROR_MESSAGE, aggregatedTestResult.getAllParticipantResult().getErrorMessage());
}
- private void assertMinimalAggregatedResults(ParticipantResult result, String expectedTestName, int expectedIterationNumber, long expectedNumberOfMessagesProcessed, int expectedTotalNumberOfConsumers, int expectedTotalNumberOfProducers)
+ private void assertMinimalAggregatedResults(ParticipantResult result, String expectedTestName, int expectedIterationNumber, int expectedBatchSize, long expectedNumberOfMessagesProcessed, int expectedTotalNumberOfConsumers, int expectedTotalNumberOfProducers)
{
assertEquals("Unexpected test name in " + result.getParticipantName(), expectedTestName, result.getTestName());
assertEquals("Unexpected iteration number in " + result.getParticipantName(), expectedIterationNumber, result.getIterationNumber());
+ assertEquals("Unexpected batch size " + result.getParticipantName(), expectedBatchSize, result.getBatchSize());
assertEquals("Unexpected number of messages processed in " + result.getParticipantName(), expectedNumberOfMessagesProcessed, result.getNumberOfMessagesProcessed());
assertEquals("Unexpected total number of consumers " + result.getParticipantName(), expectedTotalNumberOfConsumers, result.getTotalNumberOfConsumers());
assertEquals("Unexpected total number of producers " + result.getParticipantName(), expectedTotalNumberOfProducers, result.getTotalNumberOfProducers());
@@ -117,21 +120,21 @@ public class TestResultAggregatorTest extends TestCase
TestResult testResult = new TestResult(TEST1_NAME);
ConsumerParticipantResult consumerResult1 = new ConsumerParticipantResult();
- setPropertiesOn(consumerResult1, TEST1_NAME, TEST1_ITERATION_NUMBER, CONSUMER_PARTICIPANT_NAME1, NUMBER_OF_MESSAGES_PROCESSED_PER_CONSUMER, PAYLOAD_SIZE, TOTAL_PAYLOAD_PROCESSED_PER_CONSUMER, CONSUMER1_STARTDATE, CONSUMER1_ENDDATE, 1, 0);
+ setPropertiesOn(consumerResult1, TEST1_NAME, TEST1_ITERATION_NUMBER, CONSUMER_PARTICIPANT_NAME1, NUMBER_OF_MESSAGES_PROCESSED_PER_CONSUMER, BATCH_SIZE, PAYLOAD_SIZE, TOTAL_PAYLOAD_PROCESSED_PER_CONSUMER, CONSUMER1_STARTDATE, CONSUMER1_ENDDATE, 1, 0);
testResult.addParticipantResult(consumerResult1);
ConsumerParticipantResult consumerResult2 = new ConsumerParticipantResult();
- setPropertiesOn(consumerResult2, TEST1_NAME, TEST1_ITERATION_NUMBER, CONSUMER_PARTICIPANT_NAME2, NUMBER_OF_MESSAGES_PROCESSED_PER_CONSUMER, PAYLOAD_SIZE, TOTAL_PAYLOAD_PROCESSED_PER_CONSUMER, CONSUMER2_STARTDATE, CONSUMER2_ENDDATE, 1, 0);
+ setPropertiesOn(consumerResult2, TEST1_NAME, TEST1_ITERATION_NUMBER, CONSUMER_PARTICIPANT_NAME2, NUMBER_OF_MESSAGES_PROCESSED_PER_CONSUMER, BATCH_SIZE, PAYLOAD_SIZE, TOTAL_PAYLOAD_PROCESSED_PER_CONSUMER, CONSUMER2_STARTDATE, CONSUMER2_ENDDATE, 1, 0);
testResult.addParticipantResult(consumerResult2);
ParticipantResult producerResult = new ProducerParticipantResult();
- setPropertiesOn(producerResult, TEST1_NAME, TEST1_ITERATION_NUMBER, PRODUCER_PARTICIPANT_NAME, NUMBER_OF_MESSAGES_PRODUCED, PAYLOAD_SIZE, TOTAL_PAYLOAD_PRODUCED_IN_TOTAL, PRODUCER_STARTDATE, PRODUCER_ENDDATE, 0, 1);
+ setPropertiesOn(producerResult, TEST1_NAME, TEST1_ITERATION_NUMBER, PRODUCER_PARTICIPANT_NAME, NUMBER_OF_MESSAGES_PRODUCED, BATCH_SIZE, PAYLOAD_SIZE, TOTAL_PAYLOAD_PRODUCED_IN_TOTAL, PRODUCER_STARTDATE, PRODUCER_ENDDATE, 0, 1);
testResult.addParticipantResult(producerResult);
return testResult;
}
- private void setPropertiesOn(ParticipantResult participantResult, String testName, int iterationNumber, String participantName, long numberOfMessagesProcessed, int payloadSize, long totalPayloadProcessed, long start, long end, int totalNumberOfConsumers, int totalNumberOfProducers)
+ private void setPropertiesOn(ParticipantResult participantResult, String testName, int iterationNumber, String participantName, long numberOfMessagesProcessed, int batchSize, int payloadSize, long totalPayloadProcessed, long start, long end, int totalNumberOfConsumers, int totalNumberOfProducers)
{
participantResult.setParticipantName(participantName);
participantResult.setTestName(testName);
@@ -144,5 +147,6 @@ public class TestResultAggregatorTest extends TestCase
participantResult.setTotalPayloadProcessed(totalPayloadProcessed);
participantResult.setStartDate(new Date(start));
participantResult.setEndDate(new Date(end));
+ participantResult.setBatchSize(batchSize);
}
}
diff --git a/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/results/formatting/CSVFormaterTest.java b/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/results/formatting/CSVFormaterTest.java
index 14fe7179da..088746d8cd 100644
--- a/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/results/formatting/CSVFormaterTest.java
+++ b/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/results/formatting/CSVFormaterTest.java
@@ -20,7 +20,7 @@ package org.apache.qpid.disttest.results.formatting;
import static org.apache.qpid.disttest.message.ParticipantAttribute.BATCH_SIZE;
import static org.apache.qpid.disttest.message.ParticipantAttribute.CONFIGURED_CLIENT_NAME;
-import static org.apache.qpid.disttest.message.ParticipantAttribute.DELIVERY_MODE;
+import static org.apache.qpid.disttest.message.ParticipantAttribute.*;
import static org.apache.qpid.disttest.message.ParticipantAttribute.ERROR_MESSAGE;
import static org.apache.qpid.disttest.message.ParticipantAttribute.IS_BROWSIING_SUBSCRIPTION;
import static org.apache.qpid.disttest.message.ParticipantAttribute.IS_DURABLE_SUBSCRIPTION;
@@ -58,6 +58,7 @@ import org.apache.qpid.disttest.controller.ResultsForAllTests;
import org.apache.qpid.disttest.controller.TestResult;
import org.apache.qpid.disttest.message.ParticipantAttribute;
import org.apache.qpid.disttest.message.ParticipantResult;
+import org.apache.qpid.qmf.QMFProperty.AccessCode;
public class CSVFormaterTest extends TestCase
{
@@ -96,10 +97,11 @@ public class CSVFormaterTest extends TestCase
participantAttributes.put(ITERATION_NUMBER, 0);
participantAttributes.put(CONFIGURED_CLIENT_NAME, CONFIGURED_CLIENT1);
participantAttributes.put(PARTICIPANT_NAME, PARTICIPANT);
- participantAttributes.put(NUMBER_OF_MESSAGES_PROCESSED, 1);
- participantAttributes.put(PAYLOAD_SIZE, 2);
- participantAttributes.put(PRIORITY, 3);
- participantAttributes.put(TIME_TO_LIVE, 4);
+ participantAttributes.put(NUMBER_OF_MESSAGES_PROCESSED, 0);
+ participantAttributes.put(PAYLOAD_SIZE, 1);
+ participantAttributes.put(PRIORITY, 2);
+ participantAttributes.put(TIME_TO_LIVE, 3);
+ participantAttributes.put(ACKNOWLEDGE_MODE, 4);
participantAttributes.put(DELIVERY_MODE, 5);
participantAttributes.put(BATCH_SIZE, 6);
participantAttributes.put(MAXIMUM_DURATION, 7);
diff --git a/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/results/formatting/expectedOutput.csv b/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/results/formatting/expectedOutput.csv
index 073fafb68a..cfffb1e549 100644
--- a/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/results/formatting/expectedOutput.csv
+++ b/qpid/java/perftests/src/test/java/org/apache/qpid/disttest/results/formatting/expectedOutput.csv
@@ -1,2 +1,2 @@
-testName,iterationNumber,clientName,participantName,numberOfMessages,payloadSizeB,priority,timeToLiveMs,deliveryMode,batchSize,maximumDurationMs,producerStartDelayMs,producerIntervalMs,isTopic,isDurableSubscription,isBrowsingSubscription,isSelector,isNoLocal,isSynchronousConsumer,totalNumberOfConsumers,totalNumberOfProducers,totalPayloadProcessedB,throughputKbPerS,timeTakenMs,errorMessage
-TEST1,0,CONFIGURED_CLIENT1,PARTICIPANT,1,2,3,4,5,6,7,8,9,true,false,true,false,true,false,1,2,1024,2048,1000,error \ No newline at end of file
+testName,iterationNumber,clientName,participantName,numberOfMessages,payloadSizeB,priority,timeToLiveMs,acknowledgeMode,deliveryMode,batchSize,maximumDurationMs,producerStartDelayMs,producerIntervalMs,isTopic,isDurableSubscription,isBrowsingSubscription,isSelector,isNoLocal,isSynchronousConsumer,totalNumberOfConsumers,totalNumberOfProducers,totalPayloadProcessedB,throughputKbPerS,timeTakenMs,errorMessage
+TEST1,0,CONFIGURED_CLIENT1,PARTICIPANT,0,1,2,3,4,5,6,7,8,9,true,false,true,false,true,false,1,2,1024,2048,1000,error \ No newline at end of file