Hi Gordon, Thanks for fixing all the problems so quickly. I checked the changes you made and everything seems to work nicely now - I didn't found any other problems so far.
For the points 3 and 4 I raised JIRAs QPID-5322 and QPID-5323. Thanks & Regards Jakub On Fri, Nov 8, 2013 at 6:50 PM, Gordon Sim <[email protected]> wrote: > Some updates... > > > On 11/06/2013 11:09 PM, Jakub Scholz wrote: > >> 1) Why is the page file created as executable? >> -rwx------. 1 qpidd qpidd 110592000 Nov 6 19:07 my-test-queue-2 >> > > Fixed (QPID-5309) > > [...] > > 5) It would be great to have a broker configuration option "--paging-dir" >> to be able to specify the directory for the page files should be created. >> Right now it seems to use the "--data-dir" parameter. >> > > I've got a patch up for review for this one: https://reviews.apache.org/r/ > 15353/ > > [...] > > 7) The purge QMF method doesn't seem to work. When I call it for the first >> time, it seem to always purge only the messages from the loaded pages. >> When >> I try to call it again I get the following error: >> Connection closed by peer with amqp:internal-error: Queue >> "my-test-queue-2": Dequeuing message with null persistence Id. >> (/home/jakub/qpid/qpid-trunk/cpp/src/qpid/legacystore/ >> MessageStoreImpl.cpp:1372) >> >> (the queue configuration: durable=true, max_pages_loaded=1, >> page_factor=1). >> In fact with the queue configured as above, this happens to receiver as >> well - when reading the queue for the first time it gets only the messages >> from the loaded page. When read for the second time, it creates the same >> error. >> >> I also tried to change the values of max_pages_loaded and page_factor ... >> but that doesn't seem to change much. I can read/purge more messages >> before >> seeing the error. But it still seems to occur regularly. >> > > Fixed (QPID-5315). > > > 8) When the queue is created as above (max_pages_loaded=1, page_factor=1), >> but as non-durable, purging and reading still doesn't work properly. It >> always reads / purges only the loaded pages. But of course I do not get >> the >> error from the persistent message store. However, with increase >> max_pages_loaded and/or page_factor (e.g. 10 and 10), the problem seems to >> be resolved (for non-persistent queues). >> >> It seems to me that when the pages are too small / only few pages are >> loaded, the broker doesn't manage to load the pages quickly enough from >> disk and that some kind of "starves" the receiver. Perhaps setting minimal >> values for the page_factor / max_pages_loaded can help here? >> > > Should be fixed by QPID-5312. > > > 9) I know that the paged queues don't support LVQ functionality and >> probably also message priorities. But it seems that paged queues don't >> really support filters / selectors as well, or? The client using selector >> always receives only the messages which match the selector and are in the >> loaded pages. I guess it makes sense - since the broker doesn't keep >> complete message headers, it cannot easily match >> the selectors. But in that case, I would suggest to raise an error if a >> consumer with filter/selector is created. >> > > I believe this was the same issue as above (i.e. QPID-5312), though it > could occur even with max_pages_loaded > 1. > > > 10) When I try to send a message bigger than the page size, I get >> following >> error: >> Link detached by peer with amqp:precondition-failed: precondition-failed: >> Message is larger than page size for queue backed by >> /home/qpidd/qpid/0000/data/broker/my-test-queue-2 >> (/home/jakub/qpid/qpid-trunk/cpp/src/qpid/broker/PagedQueue.cpp:107) >> >> Is it intentional to include the full path to the page file? I would >> definitely prefer to show just the file name or a queue name. >> > > Fixed (QPID-5314) > > I haven't forgotten about (4) and (5) in your original mail, but they will > take a bit more effort and thought. Could you raise JIRAs for those two? > > Thanks again for the feedback! > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > >
