Bug 591320 - qmfv2 default bindings are too generic
qmfv2 default bindings are too generic
Status: CLOSED CURRENTRELEASE
Product: Red Hat Enterprise MRG
Classification: Red Hat
Component: qpid-qmf (Show other bugs)
beta
All Linux
low Severity urgent
: 1.3
: ---
Assigned To: Ted Ross
MRG Quality Engineering
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2010-05-11 17:23 EDT by Ken Giusti
Modified: 2011-08-12 12:04 EDT (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2010-10-13 09:22:26 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Ken Giusti 2010-05-11 17:23:42 EDT
Description of problem:

The default routing key bindings for qmfv2 are too generic, resulting in a great deal of needless message propagation.

Example:  "agent.ind.data" - used for binding for agent events - will receive all events regardless of need or interest.

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


How reproducible:


Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:
Comment 1 Ken Giusti 2010-05-11 18:17:18 EDT
FYI:  these log messages are issued by the broker - indicating that the queues are filling up:

May 11 15:34:33 pman08 qpidd[7399]: 2010-05-11 15:34:33 error Execution exception: resource-limit-exceeded: Policy exceeded on
 qmfc-v2-pman07.lab.bos.redhat.com.31942.1, policy: size: max=104857600, current=104839272; count: unlimited; type=reject (qpi
d/broker/QueuePolicy.cpp:85)
Comment 2 Ted Ross 2010-05-12 13:06:23 EDT
The following Python fragment illustrates how to limit the kind of updates that are received by a console:

======
from qmf.console import Session, DebugConsole
c = DebugConsole()
s = Session(c, rcvObjects=True, userBindings=True)
s.bindClass("org.apache.qpid.broker", "exchange")
s.bindClass("org.apache.qpid.broker", "queue")
b = s.addBroker()
======

By selecting the userBindings option in the Session, the client app is indicating that it will use calls to bindPackage/bindClass to indicate which classes of object it wishes to hear about.
Comment 3 Ted Ross 2010-05-12 13:19:42 EDT
Fixed upstream at revision 943589.

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