Re: Java broker - message grouping in C++ compatibility mode

2014-01-20 Thread Robbie Gemmell
Jira created at https://issues.apache.org/jira/browse/QPID-5496 I created a temporary branch and committed the change to it, and set up a temporary job on Jenkins to build it, the latest successful output will be at: https://builds.apache.org/view/M-R/view/Qpid/job/Qpid-RG-Temp/lastSuccessfulBuild

Re: Java broker - message grouping in C++ compatibility mode

2014-01-20 Thread Robbie Gemmell
Hi Helen, I had a quick stab at implementing the changes I mentioned below, namely: - Allow for disabling the 'default group' when using C++ style 'shared groups', removing or minimising the synchronization as much as possible when dealing with non-grouped messages. - Allow enabling a 'default gr

Re: Java broker - message grouping in C++ compatibility mode

2014-01-14 Thread Robbie Gemmell
Hi Helen, I expected that you would see increased performance in some of the tests, as Rob did some more work on improving performance after the 0.16 release. I did expect performance to go down somewhat for case #1 as the defect fix was putting in place some missing synchronization between delive

Re: Java broker - message grouping in C++ compatibility mode

2014-01-13 Thread Helen Kwong
Hi Robbie, I ran the tests again with a broker built from the latest trunk code and with a 0.16 client. The performance results are a lot better in almost every test setup (3-4 times better), except for Test #1 where I build up 10 messages of unique grouping values and then see how many messag

Re: Java broker - message grouping in C++ compatibility mode

2014-01-13 Thread Robbie Gemmell
Hi Helen, The change I mentioned is an important defect fix if you are looking to use the shared groups, the underlying issue allowed messages to be delivered concurrently that should not have been (in particular when using a prefetch of 1, it was significantly less likely to ever occur at >1 pref

Re: Java broker - message grouping in C++ compatibility mode

2014-01-13 Thread Helen Kwong
Hi Robbie, I am actually still running version 0.16 of the broker. It will take me a little time to set up the trunk code and rebuild and rerun the experiments. Do you think your fix will likely make a difference? For the second case with a long-lived consumer being assigned the group of many mes

Re: Java broker - message grouping in C++ compatibility mode

2014-01-11 Thread Robbie Gemmell
Hi Helen, Can I check what version of the code you were using? I ask as the latest trunk or 0.26 release branch code is going to be necessary for correctness and representative testing of the shared groups functionality, due to the defect fix I previously mentioned making recently. You can find a

Re: Java broker - message grouping in C++ compatibility mode

2014-01-10 Thread Helen Kwong
Hi Robbie, I did some more testing to see whether message grouping will work for us, and compared the dequeue performance of a queue using message grouping in default Java mode, a queue using C++ mode, and a queue not using message grouping. I found that when I use C++ mode, the performance can be

Re: Java broker - message grouping in C++ compatibility mode

2014-01-07 Thread Robbie Gemmell
...and just to be super clear, though I think it it is mentioned correctly in the docs this time, the 'default group' concept does not apply in the regular / 'non shared' grouping mode. Messages that dont specify a group key value in that mode are simply not grouped in any way. On 8 January 2014 0

Re: Java broker - message grouping in C++ compatibility mode

2014-01-07 Thread Robbie Gemmell
On 8 January 2014 04:33, Helen Kwong wrote: > Oh I see, I thought what you meant was that I could only alter the default > group in shared-groups mode starting with 0.24. No, I just missed that you said 0.16 and assumed 0.24 was the version you were using . You could always change it, just in m

Re: Java broker - message grouping in C++ compatibility mode

2014-01-07 Thread Helen Kwong
Oh I see, I thought what you meant was that I could only alter the default group in shared-groups mode starting with 0.24. To make sure I'm understanding this correctly -- changing the the default message group name to something else in C++ mode won't change the serial processing behavior I saw, ri

Re: Java broker - message grouping in C++ compatibility mode

2014-01-07 Thread Robbie Gemmell
I just noticed you said you were using 0.16, somehow glossed over it originally and only noticed the 0.24 in the doc URL (its many hours past time I was asleep, I might be getting tired). Realising that, I should add that prior to 0.22 the only way to alter the default group in the shared-groups m

Re: Java broker - message grouping in C++ compatibility mode

2014-01-07 Thread Helen Kwong
Hi Robbie, I see. Thanks for the quick response and explanation! Helen On Tue, Jan 7, 2014 at 7:43 PM, Robbie Gemmell wrote: > Hi Helen, > > The short answer to your question is that it is the documentation which is > incorrect, and the behaviour you are seeing is expected. > > The long answer

Re: Java broker - message grouping in C++ compatibility mode

2014-01-07 Thread Robbie Gemmell
Hi Helen, The short answer to your question is that it is the documentation which is incorrect, and the behaviour you are seeing is expected. The long answer is, when that documentation was composed a segment was missed out indicating this, and needs to be added to the docs. The behaviour listed

Java broker - message grouping in C++ compatibility mode

2014-01-07 Thread Helen Kwong
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