rabbitmq perf test queue types

206 views
Skip to first unread message

harini hemanathan

unread,
Oct 16, 2018, 8:11:02 AM10/16/18
to rabbitmq-users
Does rabbitmq perf test tool support  generating multiple type of queues


Luke Bakken

unread,
Oct 16, 2018, 11:22:32 AM10/16/18
to rabbitmq-users
Hi Harini,

Please be sure to check out the PerfTest documentation: https://rabbitmq.github.io/rabbitmq-perf-test/stable/htmlsingle/


If it doesn't support the type of queue you need, you can always pre-declare them and use arguments to specify using those queues.

Thanks,
Luke

Arnaud Cogoluègnes

unread,
Oct 17, 2018, 3:40:39 AM10/17/18
to rabbitm...@googlegroups.com
You can specify queues arguments in the command line [1]. You can also
specify the name or pattern for the queues you want to work against
and use policies configured at the broker level. Please be more
specific if this isn't enough.

[1] https://rabbitmq.github.io/rabbitmq-perf-test/stable/htmlsingle/#customising-queues-and-messages

On Tue, Oct 16, 2018 at 2:11 PM, harini hemanathan
<harinihe...@gmail.com> wrote:
> Does rabbitmq perf test tool support generating multiple type of queues
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "rabbitmq-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to rabbitmq-user...@googlegroups.com.
> To post to this group, send email to rabbitm...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

harini hemanathan

unread,
Oct 18, 2018, 7:00:27 AM10/18/18
to rabbitmq-users
I have created few queues manually, i want rabbitmq perf test to run using these queues. I tried the below pattern but is trying to create new queues .

I would like to have 3000 queues
500 exclusive
2450 auto_delete
50 durable

$ bin/runjava com.rabbitmq.perf.PerfTest -h amqp://usr:passwrdt@host/%2f --consumers 2 --producers 2 --queue-pattern 'test-%d' --queue-pattern-from 1 --queue-pattern-to 3  -z 60
Main thread caught exception: java.io.IOException
java.io.IOException
        at com.rabbitmq.client.impl.AMQChannel.wrap(AMQChannel.java:126)
        at com.rabbitmq.client.impl.AMQChannel.wrap(AMQChannel.java:122)
        at com.rabbitmq.client.impl.AMQChannel.exnWrappingRpc(AMQChannel.java:144)
        at com.rabbitmq.client.impl.ChannelN.queueDeclare(ChannelN.java:953)
        at com.rabbitmq.client.impl.recovery.AutorecoveringChannel.queueDeclare(AutorecoveringChannel.java:333)
        at com.rabbitmq.perf.MulticastParams$TopologyHandlerSupport.configureQueues(MulticastParams.java:593)
        at com.rabbitmq.perf.MulticastParams$SequenceTopologyHandler.configureAllQueues(MulticastParams.java:737)
        at com.rabbitmq.perf.MulticastParams.configureAllQueues(MulticastParams.java:389)
        at com.rabbitmq.perf.MulticastSet.run(MulticastSet.java:120)
        at com.rabbitmq.perf.PerfTest.main(PerfTest.java:280)
        at com.rabbitmq.perf.PerfTest.main(PerfTest.java:368)
Caused by: com.rabbitmq.client.ShutdownSignalException: channel error; protocol method: #method<channel.close>(reply-code=406, reply-text=PRECONDITION_FAILED - inequivalent arg 'durable' for queue 'test-1' in vhost '/': received 'false' but current is 'true', class-id=50, method-id=10)
        at com.rabbitmq.utility.ValueOrException.getValue(ValueOrException.java:66)
        at com.rabbitmq.utility.BlockingValueOrException.uninterruptibleGetValue(BlockingValueOrException.java:36)
        at com.rabbitmq.client.impl.AMQChannel$BlockingRpcContinuation.getReply(AMQChannel.java:494)
        at com.rabbitmq.client.impl.AMQChannel.privateRpc(AMQChannel.java:288)
        at com.rabbitmq.client.impl.AMQChannel.exnWrappingRpc(AMQChannel.java:138)
        ... 8 more
Caused by: com.rabbitmq.client.ShutdownSignalException: channel error; protocol method: #method<channel.close>(reply-code=406, reply-text=PRECONDITION_FAILED - inequivalent arg 'durable' for queue 'test-1' in vhost '/': received 'false' but current is 'true', class-id=50, method-id=10)
        at com.rabbitmq.client.impl.ChannelN.asyncShutdown(ChannelN.java:510)
        at com.rabbitmq.client.impl.ChannelN.processAsync(ChannelN.java:346)
        at com.rabbitmq.client.impl.AMQChannel.handleCompleteInboundCommand(AMQChannel.java:178)
        at com.rabbitmq.client.impl.AMQChannel.handleFrame(AMQChannel.java:111)
        at com.rabbitmq.client.impl.AMQConnection.readFrame(AMQConnection.java:670)
        at com.rabbitmq.client.impl.AMQConnection.access$300(AMQConnection.java:48)
        at com.rabbitmq.client.impl.AMQConnection$MainLoop.run(AMQConnection.java:597)
        at java.lang.Thread.run(Thread.java:745)

Arnaud Cogoluègnes

unread,
Oct 18, 2018, 7:32:19 AM10/18/18
to rabbitm...@googlegroups.com
Use the --predeclared flag, PerfTest won't try to declare anything.

On Thu, Oct 18, 2018 at 1:00 PM, harini hemanathan

Michael Klishin

unread,
Oct 18, 2018, 11:12:37 AM10/18/18
to rabbitm...@googlegroups.com
In addition to Arnaud's advice, see [1]. It explains what the
"PRECONDITION_FAILED - inequivalent arg 'durable' for queue 'test-1' in vhost '/': received 'false' but current is 'true'" 

--
MK

Staff Software Engineer, Pivotal/RabbitMQ
Reply all
Reply to author
Forward
0 new messages