On 03/06/2014 02:58 PM, Bill Freeman wrote:
On Thu, Mar 6, 2014 at 5:17 AM, Gordon Sim <[email protected]> wrote:
Can you point me at the misleading docs and I'll see if I can make it
clearer?


The spot I was thinking of is in the output of qpid-config -h:

     --max-queue-size=<n>
                         Maximum in-memory queue size as bytes


Yes, that is indeed a bit vague and imprecise now you mention it. I think the wording stems from the (now removed) flow-to-disk policy, where the queue can grow above the maximum size, but that requires messages to be 'released' from memory and retrieved from disk when needed. I.e. in that case it wasn't really a maximum limit, it was a level at which certain behaviour was triggered.

[...]
Ah, yes, now that I'm looking for them:
     --default-queue-limit
     --num-jfiles
     --jfile-size-pgs
And, since we're not setting them, it's good that qpidd --help gives the
default defaults.

I wonder if I can (for yet another tool I'm writing that tries to display
percent full in several categories) get the current default (whether
default default of configured) using QMF?  I guess I'll poke around in the
broker agent class.

I believe there is a QMF class for the store. Using qpid-tool try `schema store` to see what it has. A quick glance on trunk shows "defaultInitialFileCount and "defaultDataFileSize" both being available. You can also get the value on the various journals I think.

[...]
I guess that I tried to abbreviate that question too much.  (Either that or
I'm too dense to follow your answer.)

No, that would be me not reading the question properly! Sorry!

msgPersistEnqueues, msgPersistDequeues, bytePersistEnqueues, and
bytePersistDequeues are queue statistics, not things in the argumenst queue
property.  I had assumed that they indicated the number and total size of
messages which had been persisted, so I was surprised to see non-zero
values for a non-durable queue, none of whose content is persisted.

Looking at the code, those are set purely based on whether the *message* is marked as persistent, regardless of whether the queue is actually durable (and therefore actually persisting the messages).

[...]
And now that I think about it, is (bytePersistEnqueues -
bytePersistDequeues) the aggragate of the original (on the wire) size of
the messages, as opposed to the size (if the queue is durable) that they
consume on disk (since this differs).

In 0.18 its not quite the former. On trunk (I think from 0.26 or so) it *is* more or less the size on the wire. It isn't the size on disk.


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

Reply via email to