2009/6/23 Robbie Gemmell <robbie.gemm...@gmail.com>:
> Hi, just wondered peoples thoughts on this situation?
>
> The queue mbeans have an operation to view a list of the messages on the
> queue, specifying low/high message number of interest: viewMessages(int
> fromIndex, int toIndex). These numbers are indexed by position on the queue.
>
> Using the results of this operation to determine a message's AMQ message ID,
> you can then view the contents of a message using viewMessageContent(long
> msgID) indexed by the AMQ message ID long value gained from looking at the
> results of the viewMessages operation.
>
> In the new UI for the console I am currently doing the viewMessages()
> operation across the entire positive Integer range and displaying a list of
> all messages on the queue for users, and when they use the
> viewMessageContent() operation the UI is implicitly fetching the AMQ ID from
> the selected message to perform the operation. As such, users are no longer
> exposed to the difference in indexing (though anyone using JConsole etc
> still will be).
>
> The main issue remaining would be that the viewMessages() operation is
> inherantly limited to the first 2^31 undelivered messages on the queue at
> any given time. When I originally noticed that viewMessages was using ints
> and viewMessageContent was using longs i had thought the situation was worse
> than it actually is, because it mentioned in the interface that they are
> indexed differently(though becomes obvious after use). However, some of the
> other related methods such as getMessageCount() are also limited to int
> (getMaximumMessageCount() returns long however) and the implementations of
> the methods in SimpleAMQQueue are inherantly limited to int as well through
> use of Lists etc.
>
> Given that it is 2^31 undelivered messages in the queue which can be viewed,
> should I still look to add expanding it to Long to the end of the list
> following the other UI work or that sufficient and I can just leave it be
> since it wont be of any need until such time as the Queue implementation
> supports it anyway?

I think you can just leave it as is. You'd need quite a beefy 64Bit
machine stocked with RAM to get close to 2^31 messages in memory. When
Flow to Disk is implemented in the broker then the potential for more
messages will occur but for now I don't think we need worry about it.

Martin

> Robbie
>



-- 
Martin Ritchie

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscr...@qpid.apache.org

Reply via email to