Bug 499911 - qpid-stat command takes a very long time to run
Summary: qpid-stat command takes a very long time to run
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Enterprise MRG
Classification: Red Hat
Component: qpid-qmf
Version: 1.1.1
Hardware: All
OS: Linux
low
medium
Target Milestone: ---
: ---
Assignee: Ted Ross
QA Contact: Leonid Zhaldybin
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-05-08 20:35 UTC by Ted Ross
Modified: 2014-11-09 22:38 UTC (History)
3 users (show)

Fixed In Version: qpid-tools-0.18-8
Doc Type: Bug Fix
Doc Text:
Previously, the 'qpid-stat' command sometimes took several minutes to return a result due to one or more unresponsive QMF agents in the network in installations with various grid component queries because qpid-stat did not limit its queries to just the broker-resident. With this update, qpid-stat queries are restricted to the agents in the messaging broker.
Clone Of:
Environment:
Last Closed: 2013-06-28 18:40:35 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Ted Ross 2009-05-08 20:35:37 UTC
Description of problem:

In installations with lots of grid components, the qpid-stat command will sometimes take multiple minutes to return a result.

Version-Release number of selected component (if applicable):

1.1.1

How reproducible:

Unknown...  It happened at least once

Comment 1 Ted Ross 2009-05-08 20:36:58 UTC
It is suspected that this is caused by one or more unresponsive qmf agents in the network.  qpid-stat doesn't limit its queries to just the broker-resident agents and can get stuck waiting for timeouts to expire on unresponsive agents.

Comment 2 Ted Ross 2009-05-08 20:38:09 UTC
A fix for this problem has been committed upstream at revision 773089.

This fix restricts the qpid-stat queries to talk only to the agents embedded within the messaging broker.

Comment 5 Jan Sarenik 2010-09-21 12:31:42 UTC
qpid-tools-0.7.946106-10.el5

This may be a new bug, but I experienced it while testing if it
does not take very long time. And it did, even exited with error once:

$ qpid-stat -u broker.on.the.other.side.of.globe
Failed: IndexError - list index out of range
Traceback (most recent call last):
  File "/usr/bin/qpid-stat", line 528, in ?
    bm.display()
  File "/usr/bin/qpid-stat", line 466, in display
    self.displayMain(_types[0], _types[1:])
  File "/usr/bin/qpid-stat", line 445, in displayMain
    elif main == 'u': self.displaySubscriptions(subs)
  File "/usr/bin/qpid-stat", line 418, in displaySubscriptions
    row.append(self.qmf.getObjects(_objectId=s.queueRef)[0].name)
IndexError: list index out of range

The other time (when I was already measuring time), I got:
$ time qpid-stat -u the.same.server.far.away
...
  qmfagent                                   qmfagent-baee9190-7818-4a2f-957d-4a909af1632c  10.16.44.247:39866  condor_startd    19189                Y                        CREDIT       421
...

real    74m30.613s
user    11m41.054s
sys     0m30.637s

And that's pretty SLOW!

The other options (-b, -c, -e, -q) do not take so long
and with a correct result. The "show subscription" operation
is generally slower also when run against local broker
(though it does not end with error there). See following:

$ time qpid-stat -b localhost
real    0m2.838s
user    0m0.264s
sys     0m0.021s
$ time qpid-stat -c localhost
real    0m2.810s
user    0m0.246s
sys     0m0.023s
$ time qpid-stat -e localhost
real    0m2.816s
user    0m0.241s
sys     0m0.023s
$ time qpid-stat -q localhost
real    0m2.876s
user    0m0.252s
sys     0m0.023s
$ time qpid-stat -u localhost
real    0m9.732s
user    0m0.562s
sys     0m0.025s

Comment 6 Florian Nadge 2010-10-07 10:52:03 UTC
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
Previously, the qpid-stat command sometimes took several minutes to return a result due to one or more unresponsive qmf agents in the network in installations with various grid components Queries because qpid-stat didn't limit its queries to just the broker-resident. With this update, qpid-stat queries are restricted to the agents in the messaging broker.

Comment 7 Martin Prpič 2010-10-07 14:17:20 UTC
    Technical note updated. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    Diffed Contents:
@@ -1 +1 @@
-Previously, the qpid-stat command sometimes took several minutes to return a result due to one or more unresponsive qmf agents in the network in installations with various grid components Queries because qpid-stat didn't limit its queries to just the broker-resident. With this update, qpid-stat queries are restricted to the agents in the messaging broker.+Previously, the 'qpid-stat' command sometimes took several minutes to return a result due to one or more unresponsive QMF agents in the network in installations with various grid component queries because qpid-stat did not limit its queries to just the broker-resident. With this update, qpid-stat queries are restricted to the agents in the messaging broker.

Comment 10 Ted Ross 2013-04-03 13:40:52 UTC
This issue has been fixed as of the 0.18 upstream release.  The interchange between qpid-stat and the broker was completely re-engineered and is significantly faster.

Comment 11 Leonid Zhaldybin 2013-04-05 08:46:58 UTC
Tested on RHEL5.9 and RHEL6.4 (both i386 and x86_64). The latest available qpid-stat version (MRG/M 2.3) is capable of getting information from a broker 15-20 times faster than the previous release.

Packages used for testing:
qpid-tools-0.18-8.el5
qpid-tools-0.18-8.el6

-> VERIFIED


Note You need to log in before you can comment on or make changes to this bug.