Hi, I use the Java broker and client, version 0.16, and am considering using the message grouping feature ( http://qpid.apache.org/releases/qpid-0.24/java-broker/book/Java-Broker-Queues.html#Java-Broker-Queues-OtherTypes-Message-Grouping). >From testing I've done, there seems to be a bug with the C++ compatibility model, and I'm wondering if this is a known issue. Specifically, in my test I have a queue configured to use a group header field with "qpid.group_header_key" and C++ mode with "qpid.shared_msg_group", and have multiple listeners to the queue. Each listener will sleep for a short amount of time when it receives a message before returning. I then enqueue 10 messages that do not have a value in the group header field to the queue. Since the doc says that messages without a value in the grouping header will be delivered to any available consumer, the behavior I expect is that the messages will be processed in parallel, i.e., when listener 1 is holding on to a message and sleeping, listener 2 can receive another message from the queue. But what I see is that the messages are processed serially -- message 2 won't be received by some thread until message 1 is done. When I use the default mode instead of C++ mode, then I get the parallel processing behavior.
Is this is a known bug, and is there a fix for it already? Thanks, Helen