Hi guys, we recently switched from protocol version AMQP 0-10 to AMQP 0-91 on
the v0.32 client and noticed that the behavior for synchronous consumers
(consumer.receive) has changed. For example, in AMQP 0-10, if we enqueue 5
messages to queue Q1, then calling "receive" on a consumer that is listening
to Q1 5 times in succession will return all 5 messages. However with AMQP
0-91, calling "receive" will only return the first message and subsequent
invocations will hang/time out even though there are additional messages
sitting on Q1 (we tested with a single consumer).

In both AMQP 0-10 and AMQP 0-91, we are using transacted sessions with max
prefetch of 1. We did notice that changing max prefetch to 3 in AMQP 0-91
allowed us to consume up to 3 messages synchronously and so on. While
intuitively this makes sense, we could not figure out why AMQP 0-10 allows
us to consume multiple messages synchronously with prefetch=1 while AMQP
0-91 does not.

Cheers! Dan

Context on why we switched from AMQP 0-91 to AMQP 0-10 with prefetch=1:
http://qpid.2158936.n2.nabble.com/Re-1-Queue-with-2-Consumers-turn-off-pre-fetching-td6934582.html




--
View this message in context: 
http://qpid.2158936.n2.nabble.com/Synchronous-consumer-can-only-dequeue-1-message-in-AMQP-0-91-tp7613017.html
Sent from the Apache Qpid users mailing list archive at Nabble.com.

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to