<!--
    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.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

    <modelVersion>4.0.0</modelVersion>
    <groupId>org.apache.qpid</groupId>
    <artifactId>qpid-perftests</artifactId>
    <packaging>jar</packaging>
    <version>1.0-incubating-M2-SNAPSHOT</version>
    <name>Qpid Performance Tests</name>
    <url>http://cwiki.apache.org/confluence/display/qpid</url>

    <parent>
        <groupId>org.apache.qpid</groupId>
        <artifactId>qpid</artifactId>
        <version>1.0-incubating-M2-SNAPSHOT</version>
    </parent>

    <properties>
        <topDirectoryLocation>..</topDirectoryLocation>
        <log4j.perftests>perftests.log4j</log4j.perftests>
    </properties>

    <!-- Temporary local maven repo, whilst JUnit Toolkit is still reaching stable version to add to central maven repository. -->
    <repositories>
        <repository>
            <id>junit-toolkit.snapshots</id>
            <name>JUnit Toolkit SNAPSHOT Repository</name>
            <url>http://junit-toolkit.svn.sourceforge.net/svnroot/junit-toolkit/snapshots/</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
    </repositories>

    <!-- Temporary local maven repo, whilst JUnit Toolkit is still reaching stable version to add to central maven repository. -->
    <pluginRepositories>
        <pluginRepository>
            <id>junit-toolkit-plugin.snapshots</id>
            <name>JUnit Toolkit SNAPSHOT Repository</name>
            <url>http://junit-toolkit.svn.sourceforge.net/svnroot/junit-toolkit/snapshots/</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </pluginRepository>
    </pluginRepositories>

    <dependencies>

        <dependency>
            <groupId>org.apache.qpid</groupId>
            <artifactId>qpid-client</artifactId>
        </dependency>

        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
        </dependency>

        <dependency>
            <groupId>uk.co.thebadgerset</groupId>
            <artifactId>junit-toolkit</artifactId>
        </dependency>

        <!-- Test dependencies. -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
        </dependency>

    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-antrun-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
            </plugin>

            <!-- The JUnit Toolkit maven2 plugin is in the process of being added to the maven repository.
                 
                 Configures the toolkit test runner for performance testing. These can be run from within maven, or by using the generated
                 scripts.
                 
                 To run from within maven:
                 
                 mvn uk.co.thebadgerset:junit-toolkit-maven-plugin:tktest
                 
                 To run from the command line (after doing assembly:assembly goal):
                 
                 java -cp target/test_jar-jar-with-dependencies.jar uk.co.thebadgerset.junit.extensions.TKTestRunner -s 1 -r 100000 
                 -o target org.apache.qpid.requestreply.PingPongTestPerf
                 
                 To generate the scripts do:
                 
                 mvn uk.co.thebadgerset:junit-toolkit-maven-plugin:tkscriptgen
                 
                 Then to run the scripts, in the target directory do (after doing assembly:assembly goal):
                 
                 ./script_name.sh
                 
                 These scripts can find everything in the 'all test dependencies' jar created by the assembly:assembly goal.
            -->
            <plugin>
                <groupId>uk.co.thebadgerset</groupId>
                <artifactId>junit-toolkit-maven-plugin</artifactId>

                <configuration>
                    <scriptOutDirectory>target</scriptOutDirectory>
                    <testJar>${project.build.finalName}-all-test-deps.jar</testJar>
                    <systemproperties>
                        <property>
                            <name>-Xms</name>
                            <value>256m</value>
                        </property>
                        <property>
                            <name>-Xmx</name>
                            <value>3072m</value>
                        </property>
                        <property>
                            <name>log4j.configuration</name>
                            <value>${log4j.perftests}</value>
                        </property>
                        <property>
                            <name>amqj.logging.level</name>
                            <value>warn</value>
                        </property>
                        <property><!-- Turn off most logging messages from the junit-toolkit test tool itself. -->
                            <name>badger.level</name>
                            <value>warn</value>
                        </property>
                        <property>
                            <name>amqj.test.logging.level</name>
                            <value>info</value>
                        </property>
                    </systemproperties>

                    <commands>
                        <!-- Single pings. These can be scaled up by overriding the parameters when calling the test script. -->
                        <Ping-Once>-n Ping-Once -s [1] -r 1 -t testPingOk -o . org.apache.qpid.ping.PingTestPerf</Ping-Once>
                        <Ping-Once-Async>-n Ping-Once-Async -s [1] -r 1 -t testAsyncPingOk -o . org.apache.qpid.ping.PingAsyncTestPerf</Ping-Once-Async>
                        <Ping-Latency>-n Ping-Latency -s [1000] -d 10S -t testPingLatency -o . org.apache.qpid.ping.PingLatencyTestPerf</Ping-Latency>

                        <!-- More example Tests. These are examples to exercise all the features of the test harness. Can scale up with option overrides. -->
                        <Ping-Tx>-n Ping-Tx -s [100] -o . -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf transacted=true</Ping-Tx>
                        <Ping-Size>-n Ping-Size -s [100] -o . -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf messageSize=512</Ping-Size>
                        <Ping-Concurrent>-n Ping-Concurrent -s [100] -c [4] -o . -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf</Ping-Concurrent>
                        <Ping-Many-Queues>-n Ping-Many-Queues -s [100] -o . -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf destinationCount=4</Ping-Many-Queues>
                        <Ping-Duration>-n Ping-Duration -s [100] -d10S -o . -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf</Ping-Duration>
                        <Ping-Rate>-n Ping-Rate -s [100] -d10S -o . -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf rate=500</Ping-Rate>
                        <Ping-PubSub>-n Ping-PubSub -s [100] -o . -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf pubsub=true</Ping-PubSub>
                        <Ping-Many-Topics>-n Ping-Many-Topics -s [100] -o . -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf pubsub=true destinationCount=4</Ping-Many-Topics>
                        <Ping-Persistent>-n Ping-Persistent -s [100] -o . -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true</Ping-Persistent>
                        <Ping-Batch-Logging>-n Ping-Batch-Logging -s [100] -o . -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf batchSize=10</Ping-Batch-Logging>
                        <Ping-Failover-Before-Send>-n Ping-Failover-Before-Send -s [100] -o . -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf commitBatchSize=10 failBeforeSend=true</Ping-Failover-Before-Send>
                        <Ping-Failover-After-Send>-n Ping-Failover-After-Send -s [100] -o . -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf commitBatchSize=10 failAfterSend=true</Ping-Failover-After-Send>
                        <Ping-Failover-Before-Commit>-n Ping-Failover-Before-Commit -s [100] -o . -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf commitBatchSize=10 failBeforeCommit=true</Ping-Failover-Before-Commit>
                        <Ping-Failover-After-Commit>-n Ping-Failover-After-Commit -s [100] -o . -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf commitBatchSize=10 failAfterCommit=true</Ping-Failover-After-Commit>
                        
                        <!-- 
                             Move this commentary to the wiki instead.
                             -
                             Qpid Performance Tests. If editing, please use a non line wrapping mode and keep in columns, makes it easier to check
                             for consistent parameter setting accross all of the tests.
                             -
                             Using PingAsyncTestPerf for simultanes send and receive, sampling results on batches of received messages.
                             -
                             Tests are broken down into four main categories by selecting from transient/persistent and pubsub/p2p. One of
                             these categories is persistent pubsub messaging which is not a common usage model. It is included for completeness.
                             -
                             Each category is broken down into three main areas, reliability/burn in testing, client scaling and message size scaling.
                             -
                             The reliability/burn in tests, test the broker running at slightly below its maximum throughput for a period of 24 hours.
                             Their purpose is to check that the broker remains stable under load for a reasonable duration, in order to provide
                             some confidence in the long-term stability of its process.
                             These tests are intended to be run as a two step process. The first two tests run for 10 minutes and are used to asses
                             the broker throughput for the test. The output from these tests are to be fed into the rate limiter for the second set
                             of tests, so that the broker may be set up to run at slightly below its maximum throughput for the 24 hour duration.
                             It is suggested that 90% of the rate achieved by the first two tests should be used for this.
                             -
                             The client scaling tests are split into two sub-sections. The first section tests the performance of increasing numbers
                             of client connections, each sending at a fixed rate. The purpose of this is to determine the brokers saturation load,
                             and to evaluate how its performance degrades uder higher loads. The second section varies the fan-out or fan-in ratio
                             of the number of sending clients to receving clients. This is primarily intended to test the pubsub messaging model,
                             but the tests are also run in p2p mode (with each message being received by one consumer), for completeness and to
                             provide a comparison with the pubsub performance.
                             -
                             The message size scaling tests, examine the brokers performance with different message payload sizes. The purpose of
                             these tests is to evaluate where the broker process switches from being an io-bound to a cpu-bound process (if at all).
                             The expected model is that the amount of CPU processing the broker has to carry out depends largely on the number of
                             messages, and not on their size, because it carries out de-framing and routing for each message header but just
                             copies payloads in-place or in a tight instruction loop. Therefore large message should be io-bound and a constant
                             data rate through the broker should be seen for messages larger than the io/cpu threshold. Small messages require
                             more processing so a constant message rate should be seen for message smaller than the io/cpu threshold. If the broker
                             implementation is extremely efficient the threshold may dissapear altogether and the broker will be purely io-bound.
                             -
                             The final variation, which is applied to all tests, is to run a transactional and non-transactional version of each.
                             Messages are always batched into transactions of 100 messages each.
                        -->

                        <!-- Transient, P2P Tests -->
                        <TQR-Qpid-1>-n TQR-Qpid-1           -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=1  rate=0     </TQR-Qpid-1>
                        <TQR-Qpid-2>-n TQR-Qpid-2           -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=1  rate=0     </TQR-Qpid-2>
                        <TQR-Qpid-3>-n TQR-Qpid-3           -d24H -s[100000] -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=true  commitBatchSize=100 batchSize=100000 messageSize=256     destinationsCount=1  rate=10000 </TQR-Qpid-3>
                        <TQR-Qpid-4>-n TQR-Qpid-4           -d24H -s[100000] -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=false commitBatchSize=100 batchSize=100000 messageSize=256     destinationsCount=1  rate=10000 </TQR-Qpid-4>

                        <TQC-Qpid-1>-n TPC-Qpid-1           -d1M  -s[100]    -c[1,32],samples=32 -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=1  rate=100   </TQC-Qpid-1>
                        <TQC-Qpid-2>-n TPC-Qpid-2           -d1M  -s[100]    -c[1,32],samples=32 -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=1  rate=100   </TQC-Qpid-2>
                        <TQC-Qpid-7>-n TQC-Qpid-7           -d10M -s[1000]   -c[10]              -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=10 rate=0     </TQC-Qpid-7>
                        <TQC-Qpid-8>-n TQC-Qpid-8           -d10M -s[1000]   -c[10]              -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=10 rate=0     </TQC-Qpid-8>
                        <TQC-Qpid-11>-n TQC-Qpid-1          -d10M -s[1000]   -c[100]             -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=10 rate=0     </TQC-Qpid-11>
                        <TQC-Qpid-12>-n TQC-Qpid-12         -d10M -s[1000]   -c[100]             -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=10 rate=0     </TQC-Qpid-12>

                        <TQM-Qpid-1-512b>-n TQM-Qpid-1-512b -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=512     destinationsCount=1  rate=0     </TQM-Qpid-1-512b>
                        <TQM-Qpid-2-512b>-n TQM-Qpid-2-512b -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=512     destinationsCount=1  rate=0     </TQM-Qpid-2-512b>
                        <TQM-Qpid-1-1K>-n TQM-Qpid-1-1K     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=1024    destinationsCount=1  rate=0     </TQM-Qpid-1-1K>
                        <TQM-Qpid-2-1K>-n TQM-Qpid-2-1K     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=1024    destinationsCount=1  rate=0     </TQM-Qpid-2-1K>
                        <TQM-Qpid-1-5K>-n TQM-Qpid-1-5K     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=5120    destinationsCount=1  rate=0     </TQM-Qpid-1-5K>
                        <TQM-Qpid-2-5K>-n TQM-Qpid-2-5K     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=5120    destinationsCount=1  rate=0     </TQM-Qpid-2-5K>
                        <TQM-Qpid-1-10K>-n TQM-Qpid-1-10K   -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=10240   destinationsCount=1  rate=0     </TQM-Qpid-1-10K>
                        <TQM-Qpid-2-10K>-n TQM-Qpid-2-10K   -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=10240   destinationsCount=1  rate=0     </TQM-Qpid-2-10K>
                        <TQM-Qpid-1-50K>-n TQM-Qpid-1-50K   -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=51200   destinationsCount=1  rate=0     </TQM-Qpid-1-50K>
                        <TQM-Qpid-2-50K>-n TQM-Qpid-2-50K   -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=51200   destinationsCount=1  rate=0     </TQM-Qpid-2-50K>
                        <TQM-Qpid-1-100K>-n TQM-Qpid-1-100K -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=102400  destinationsCount=1  rate=0     </TQM-Qpid-1-100K>
                        <TQM-Qpid-2-100K>-n TQM-Qpid-2-100K -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=102400  destinationsCount=1  rate=0     </TQM-Qpid-2-100K>
                        <TQM-Qpid-1-500K>-n TQM-Qpid-1-500K -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=512000  destinationsCount=1  rate=0     </TQM-Qpid-1-500K>
                        <TQM-Qpid-2-500K>-n TQM-Qpid-2-500K -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=512000  destinationsCount=1  rate=0     </TQM-Qpid-2-500K>
                        <TQM-Qpid-1-1M>-n TQM-Qpid-1-1M     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=1048576 destinationsCount=1  rate=0     </TQM-Qpid-1-1M>
                        <TQM-Qpid-2-1M>-n TQM-Qpid-2-1M     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=1048576 destinationsCount=1  rate=0     </TQM-Qpid-2-1M>

                        <!-- Transient, Pub/Sub Tests -->
                        <TTR-Qpid-1>-n TTR-Qpid-1           -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=1  rate=0     </TTR-Qpid-1>
                        <TTR-Qpid-2>-n TTR-Qpid-2           -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=1  rate=0     </TTR-Qpid-2>
                        <TTR-Qpid-3>-n TTR-Qpid-3           -d24H -s[100000] -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=true  commitBatchSize=100 batchSize=10000  messageSize=256     destinationsCount=1  rate=10000 </TTR-Qpid-3>
                        <TTR-Qpid-4>-n TTR-Qpid-4           -d24H -s[100000] -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=false commitBatchSize=100 batchSize=10000  messageSize=256     destinationsCount=1  rate=10000 </TTR-Qpid-4>

                        <TTC-Qpid-1>-n TTC-Qpid-1           -d1M  -s[1000]   -c[1,32],samples=32 -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=1  rate=1000  </TTC-Qpid-1>
                        <TTC-Qpid-2>-n TTC-Qpid-2           -d1M  -s[1000]   -c[1,32],samples=32 -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=1  rate=1000  </TTC-Qpid-2>
                        <TTC-Qpid-7>-n TTC-Qpid-7           -d10M -s[1000]   -c[10]              -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=10 rate=0     </TTC-Qpid-7>
                        <TTC-Qpid-8>-n TTC-Qpid-8           -d10M -s[1000]   -c[10]              -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=10 rate=0     </TTC-Qpid-8>
                        <TTC-Qpid-11>-n TTC-Qpid-11         -d10M -s[1000]   -c[100]             -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=10 rate=0     </TTC-Qpid-11>
                        <TTC-Qpid-12>-n TTC-Qpid-12         -d10M -s[1000]   -c[100]             -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=10 rate=0     </TTC-Qpid-12>

                        <TTM-Qpid-1-512b>-n TTM-Qpid-1-512b -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=512     destinationsCount=1  rate=0     </TTM-Qpid-1-512b>
                        <TTM-Qpid-2-512b>-n TTM-Qpid-2-512b -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=512     destinationsCount=1  rate=0     </TTM-Qpid-2-512b>
                        <TTM-Qpid-1-1K>-n TTM-Qpid-1-1K     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=1024    destinationsCount=1  rate=0     </TTM-Qpid-1-1K>
                        <TTM-Qpid-2-1K>-n TTM-Qpid-2-1K     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=1024    destinationsCount=1  rate=0     </TTM-Qpid-2-1K>
                        <TTM-Qpid-1-5K>-n TTM-Qpid-1-5K     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=5120    destinationsCount=1  rate=0     </TTM-Qpid-1-5K>
                        <TTM-Qpid-2-5K>-n TTM-Qpid-2-5K     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=5120    destinationsCount=1  rate=0     </TTM-Qpid-2-5K>
                        <TTM-Qpid-1-10K>-n TTM-Qpid-1-10K   -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=10240   destinationsCount=1  rate=0     </TTM-Qpid-1-10K>
                        <TTM-Qpid-2-10K>-n TTM-Qpid-2-10K   -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=10240   destinationsCount=1  rate=0     </TTM-Qpid-2-10K>
                        <TTM-Qpid-1-50K>-n TTM-Qpid-1-50K   -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=51200   destinationsCount=1  rate=0     </TTM-Qpid-1-50K>
                        <TTM-Qpid-2-50K>-n TTM-Qpid-2-50K   -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=51200   destinationsCount=1  rate=0     </TTM-Qpid-2-50K>
                        <TTM-Qpid-1-100K>-n TTM-Qpid-1-100K -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=102400  destinationsCount=1  rate=0     </TTM-Qpid-1-100K>
                        <TTM-Qpid-2-100K>-n TTM-Qpid-2-100K -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=102400  destinationsCount=1  rate=0     </TTM-Qpid-2-100K>
                        <TTM-Qpid-1-500K>-n TTM-Qpid-1-500K -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=512000  destinationsCount=1  rate=0     </TTM-Qpid-1-500K>
                        <TTM-Qpid-2-500K>-n TTM-Qpid-2-500K -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=512000  destinationsCount=1  rate=0     </TTM-Qpid-2-500K>
                        <TTM-Qpid-1-1M>-n TTM-Qpid-1-1M     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=1048576 destinationsCount=1  rate=0     </TTM-Qpid-1-1M>
                        <TTM-Qpid-2-1M>-n TTM-Qpid-2-1M     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=1048476 destinationsCount=1  rate=0     </TTM-Qpid-2-1M>

                        <!-- Persistent, P2P Tests -->
                        <PQR-Qpid-1>-n PQR-Qpid-1           -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=1  rate=0     </PQR-Qpid-1>
                        <PQR-Qpid-2>-n PQR-Qpid-2           -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=1  rate=0     </PQR-Qpid-2>
                        <PQR-Qpid-3>-n PQR-Qpid-3           -d24H -s[100000] -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=true  commitBatchSize=100 batchSize=100000 messageSize=256     destinationsCount=1  rate=1000  </PQR-Qpid-3>
                        <PQR-Qpid-4>-n PQR-Qpid-4           -d24H -s[100000] -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=false commitBatchSize=100 batchSize=100000 messageSize=256     destinationsCount=1  rate=1000  </PQR-Qpid-4>

                        <PQC-Qpid-1>-n PPC-Qpid-1           -d1M  -s[100]    -c[1,32],samples=32 -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=1  rate=100   </PQC-Qpid-1>
                        <PQC-Qpid-2>-n PPC-Qpid-2           -d1M  -s[100]    -c[1,32],samples=32 -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=1  rate=100   </PQC-Qpid-2>
                        <PQC-Qpid-7>-n PQC-Qpid-7           -d10M -s[1000]   -c[10]              -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=true  commitBatchSize=100 batchSize=100    messageSize=256     destinationsCount=10 rate=0     </PQC-Qpid-7>
                        <PQC-Qpid-8>-n PQC-Qpid-8           -d10M -s[1000]   -c[10]              -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=10 rate=0     </PQC-Qpid-8>
                        <PQC-Qpid-11>-n PQC-Qpid-11         -d10M -s[1000]   -c[100]             -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=10 rate=0     </PQC-Qpid-11>
                        <PQC-Qpid-12>-n PQC-Qpid-12         -d10M -s[1000]   -c[100]             -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=10 rate=0     </PQC-Qpid-12>

                        <PQM-Qpid-1-512b>-n PQM-Qpid-1-512b -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=512     destinationsCount=1  rate=0     </PQM-Qpid-1-512b>
                        <PQM-Qpid-2-512b>-n PQM-Qpid-2-512b -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=512     destinationsCount=1  rate=0     </PQM-Qpid-2-512b>
                        <PQM-Qpid-1-1K>-n PQM-Qpid-1-1K     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=1024    destinationsCount=1  rate=0     </PQM-Qpid-1-1K>
                        <PQM-Qpid-2-1K>-n PQM-Qpid-2-1K     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=1024    destinationsCount=1  rate=0     </PQM-Qpid-2-1K>
                        <PQM-Qpid-1-5K>-n PQM-Qpid-1-5K     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=5120    destinationsCount=1  rate=0     </PQM-Qpid-1-5K>
                        <PQM-Qpid-2-5K>-n PQM-Qpid-2-5K     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=5120    destinationsCount=1  rate=0     </PQM-Qpid-2-5K>
                        <PQM-Qpid-1-10K>-n PQM-Qpid-1-10K   -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=10240   destinationsCount=1  rate=0     </PQM-Qpid-1-10K>
                        <PQM-Qpid-2-10K>-n PQM-Qpid-2-10K   -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=10240   destinationsCount=1  rate=0     </PQM-Qpid-2-10K>
                        <PQM-Qpid-1-50K>-n PQM-Qpid-1-50K   -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=51200   destinationsCount=1  rate=0     </PQM-Qpid-1-50K>
                        <PQM-Qpid-2-50K>-n PQM-Qpid-2-50K   -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=51200   destinationsCount=1  rate=0     </PQM-Qpid-2-50K>
                        <PQM-Qpid-1-100K>-n PQM-Qpid-1-100K -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=102400  destinationsCount=1  rate=0     </PQM-Qpid-1-100K>
                        <PQM-Qpid-2-100K>-n PQM-Qpid-2-100K -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=102400  destinationsCount=1  rate=0     </PQM-Qpid-2-100K>
                        <PQM-Qpid-1-500K>-n PQM-Qpid-1-500K -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=512000  destinationsCount=1  rate=0     </PQM-Qpid-1-500K>
                        <PQM-Qpid-2-500K>-n PQM-Qpid-2-500K -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=512000  destinationsCount=1  rate=0     </PQM-Qpid-2-500K>
                        <PQM-Qpid-1-1M>-n PQM-Qpid-1-1M     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=1048576 destinationsCount=1  rate=0     </PQM-Qpid-1-1M>
                        <PQM-Qpid-2-1M>-n PQM-Qpid-2-1M     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=1048576 destinationsCount=1  rate=0     </PQM-Qpid-2-1M>

                        <!-- Persistent, Pub/Sub Tests -->
                        <PTR-Qpid-1>-n PTR-Qpid-1           -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=1  rate=0     </PTR-Qpid-1>
                        <PTR-Qpid-2>-n PTR-Qpid-2           -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=1  rate=0     </PTR-Qpid-2>
                        <PTR-Qpid-3>-n PTR-Qpid-3           -d24H -s[100000] -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=true  commitBatchSize=100 batchSize=10000  messageSize=256     destinationsCount=1  rate=1000  </PTR-Qpid-3>
                        <PTR-Qpid-4>-n PTR-Qpid-4           -d24H -s[100000] -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=false commitBatchSize=100 batchSize=10000  messageSize=256     destinationsCount=1  rate=1000  </PTR-Qpid-4>

                        <PTC-Qpid-1>-n PTC-Qpid-1           -d1M  -s[1000]   -c[1,32],samples=32 -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=true  commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=1  rate=1000  </PTC-Qpid-1>
                        <PTC-Qpid-2>-n PTC-Qpid-2           -d1M  -s[1000]   -c[1,32],samples=32 -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=false pubsub=false transacted=false commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=1  rate=1000  </PTC-Qpid-2>

                        <PTC-Qpid-7>-n PTC-Qpid-7           -d10M -s[1000]   -c[10]              -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=10 rate=0     </PTC-Qpid-7>
                        <PTC-Qpid-8>-n PTC-Qpid-8           -d10M -s[1000]   -c[10]              -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=10 rate=0     </PTC-Qpid-8>
                        <PTC-Qpid-11>-n PTC-Qpid-11         -d10M -s[1000]   -c[100]             -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=10 rate=0     </PTC-Qpid-11>
                        <PTC-Qpid-12>-n PTC-Qpid-12         -d10M -s[1000]   -c[100]             -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=256     destinationsCount=10 rate=0     </PTC-Qpid-12>

                        <PMT-Qpid-1-512b>-n PMT-Qpid-1-512b -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=512     destinationsCount=1  rate=0     </PMT-Qpid-1-512b>
                        <PMT-Qpid-2-512b>-n PMT-Qpid-2-512b -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=512     destinationsCount=1  rate=0     </PMT-Qpid-2-512b>
                        <PMT-Qpid-1-1K>-n PMT-Qpid-1-1K     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=1024    destinationsCount=1  rate=0     </PMT-Qpid-1-1K>
                        <PMT-Qpid-2-1K>-n PMT-Qpid-2-1K     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=1024    destinationsCount=1  rate=0     </PMT-Qpid-2-1K>
                        <PMT-Qpid-1-5K>-n PMT-Qpid-1-5K     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=5120    destinationsCount=1  rate=0     </PMT-Qpid-1-5K>
                        <PMT-Qpid-2-5K>-n PMT-Qpid-2-5K     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=5120    destinationsCount=1  rate=0     </PMT-Qpid-2-5K>
                        <PMT-Qpid-1-10K>-n PMT-Qpid-1-10K   -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=10240   destinationsCount=1  rate=0     </PMT-Qpid-1-10K>
                        <PMT-Qpid-2-10K>-n PMT-Qpid-2-10K   -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=10240   destinationsCount=1  rate=0     </PMT-Qpid-2-10K>
                        <PMT-Qpid-1-50K>-n PMT-Qpid-1-50K   -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=51200   destinationsCount=1  rate=0     </PMT-Qpid-1-50K>
                        <PMT-Qpid-2-50K>-n PMT-Qpid-2-50K   -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=51200   destinationsCount=1  rate=0     </PMT-Qpid-2-50K>
                        <PMT-Qpid-1-100K>-n PMT-Qpid-1-100K -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=102400  destinationsCount=1  rate=0     </PMT-Qpid-1-100K>
                        <PMT-Qpid-2-100K>-n PMT-Qpid-2-100K -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=102400  destinationsCount=1  rate=0     </PMT-Qpid-2-100K>
                        <PMT-Qpid-1-500K>-n PMT-Qpid-1-500K -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=512000  destinationsCount=1  rate=0     </PMT-Qpid-1-500K>
                        <PMT-Qpid-2-500K>-n PMT-Qpid-2-500K -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=512000  destinationsCount=1  rate=0     </PMT-Qpid-2-500K>
                        <PMT-Qpid-1-1M>-n PMT-Qpid-1-1M     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=true  commitBatchSize=100 batchSize=1000   messageSize=1048576 destinationsCount=1  rate=0     </PMT-Qpid-1-1M>
                        <PMT-Qpid-2-1M>-n PMT-Qpid-2-1M     -d10M -s[1000]   -c[1]               -o $QPID_WORK/results -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true  pubsub=true  transacted=false commitBatchSize=100 batchSize=1000   messageSize=1048476 destinationsCount=1  rate=0     </PMT-Qpid-2-1M>

                        <!-- Failover Tests. -->
                        <FT-Qpid-1>-n FT-Qpid-1 -s [250000] -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf messageSize=256 batchSize=10000 transacted=true broker="tcp://10.0.0.1:5001;tcp://10.0.0.2:5002" failBeforeSend=true -o $QPID_WORK/results</FT-Qpid-1>
                        <FT-Qpid-2>-n FT-Qpid-2 -s [250000] -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf messageSize=256 batchSize=10000 transacted=true broker="tcp://10.0.0.1:5001;tcp://10.0.0.2:5002" failAfterSend=true -o $QPID_WORK/results</FT-Qpid-2>
                        <FT-Qpid-3>-n FT-Qpid-3 -s [250000] -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf messageSize=256 batchSize=10000 transacted=true broker="tcp://10.0.0.1:5001;tcp://10.0.0.2:5002" failAfterCommit=true -o $QPID_WORK/results</FT-Qpid-3>
                        <FT-Qpid-4>-n FT-Qpid-4 -s [250000] -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf messageSize=256 batchSize=10000 broker="tcp://10.0.0.1:5001;tcp://10.0.0.2:5002" transacted=false failBeforeSend=true -o $QPID_WORK/results</FT-Qpid-4>
                        <FT-Qpid-5>-n FT-Qpid-5 -s [250000] -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf messageSize=256 batchSize=10000 broker="tcp://10.0.0.1:5001;tcp://10.0.0.2:5002" transacted=false failAfterSend=true -o $QPID_WORK/results</FT-Qpid-5>
                        <FT-Qpid-1-P>-n FT-Qpid-1-P -s [25000] -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true messageSize=256 batchSize=10000 transacted=true broker="tcp://10.0.0.1:5001;tcp://10.0.0.2:5002" failBeforeSend=true -o $QPID_WORK/results</FT-Qpid-1-P>
                        <FT-Qpid-2-P>-n FT-Qpid-2-P -s [25000] -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true messageSize=256 batchSize=10000 transacted=true broker="tcp://10.0.0.1:5001;tcp://10.0.0.2:5002" failAfterSend=true -o $QPID_WORK/results</FT-Qpid-2-P>
                        <FT-Qpid-3-P>-n FT-Qpid-3-P -s [25000] -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true messageSize=256 batchSize=10000 transacted=true broker="tcp://10.0.0.1:5001;tcp://10.0.0.2:5002" failAfterCommit=true -o $QPID_WORK/results</FT-Qpid-3-P>
                        <FT-Qpid-4-P>-n FT-Qpid-4-P -s [250] -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true messageSize=256 broker="tcp://10.0.0.1:5001;tcp://10.0.0.2:5002" transacted=false failBeforeSend=true -o $QPID_WORK/results</FT-Qpid-4-P>
                        <FT-Qpid-5-P>-n FT-Qpid-5-P -s [250] -t testAsyncPingOk org.apache.qpid.ping.PingAsyncTestPerf persistent=true messageSize=256 broker="tcp://10.0.0.1:5001;tcp://10.0.0.2:5002" transacted=false failAfterSend=true -o $QPID_WORK/results</FT-Qpid-5-P>

                    </commands>
                </configuration>

                <executions>
                    <execution>
                        <phase>test</phase>
                    </execution>
                </executions>
            </plugin>

            <!-- Bundles all the dependencies, fully expanded into a single jar, required to run the tests.
                 Also builds all thescripts and this jar into distributable .zip and .tar.gz files.
                 
                 Usefull when bundling system, integration or performance tests into a convenient
                 package to hand over to testers. To use it run:
                 
                 java -cp target/your_app_name-all-test-deps.jar path.to.your.Class
                 
                 or often:
                 
                 java -cp target/your_app_name-all-test-deps.jar junit.framework.textui.TestRunner path.to.your.test.Class
                 
                 or other JUnit test runner invocations.
            -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-assembly-plugin</artifactId>
                <version>2.2-SNAPSHOT</version>
                <configuration>
                    <descriptors>
                        <descriptor>jar-with-dependencies.xml</descriptor>
                        <descriptor>dist-zip.xml</descriptor>
                    </descriptors>
                    <outputDirectory>target</outputDirectory>
                    <workDirectory>target/assembly/work</workDirectory>
                </configuration>
            </plugin>

        </plugins>

        <resources>
            <!-- Include source files in built jar -->
            <resource>
                <targetPath>src/</targetPath>
                <filtering>false</filtering>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.java</include>
                </includes>
            </resource>
            <!-- Include a log4j configuration in the jar at the root level (don't name this log4j.properties though as won't be able to override it). -->
            <resource>
                <targetPath>/</targetPath>
                <filtering>false</filtering>
                <directory>src/main/java</directory>
                <includes>
                    <include>perftests.log4j</include>
                </includes>
            </resource>
        </resources>
    </build>

</project>
