Bug 474169 - exception thrown caused by queue policy exceeded should communicate more precisely the reason
exception thrown caused by queue policy exceeded should communicate more prec...
Status: CLOSED ERRATA
Product: Red Hat Enterprise MRG
Classification: Red Hat
Component: qpid-java (Show other bugs)
1.1
All Linux
medium Severity medium
: 1.1.1
: ---
Assigned To: Rafael H. Schloming
Kim van der Riet
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2008-12-02 11:20 EST by Frantisek Reznicek
Modified: 2015-11-15 19:06 EST (History)
3 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2009-05-18 07:57:22 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 Frantisek Reznicek 2008-12-02 11:20:08 EST
Description of problem:
When an queue policy exceeded situation occurs (for instance in RHTS test qpid_java_exceptions_bz459130).
The session exception is thrown. This is OK, but explanation should point out that a queue policy was exceeded in the exception details.

It is not the case at the moment.

Version-Release number of selected component (if applicable):
qpidc-perftest-0.3.722122-2.el5
qpidd-0.3.722122-2.el5
python-qpid-0.3.719419-2.el5
qpidc-rdma-0.3.722122-2.el5
qpidd-xml-0.3.722122-2.el5
qpidc-ssl-0.3.722122-2.el5
qpidd-rdma-0.3.722122-2.el5
qpidc-devel-0.3.722122-2.el5
qpidd-ssl-0.3.722122-2.el5
qpidc-0.3.722122-2.el5
qpidd-acl-0.3.722122-2.el5
qpid-java-client-0.3.712662-1.el5
qpidd-devel-0.3.722122-2.el5
qpid-java-common-0.3.712662-1.el5
qpidd-cluster-0.3.722122-2.el5


How reproducible:
100%

Steps to Reproduce:
1. run RHTS test qpid_java_exceptions_bz459130
2. check out the log (qpid_java_exceptions_bz459130.log)
  
Actual results:
CLASSPATH=/home/freznice/prjs/rhts_tests/tests/distribution/MRG_Messaging/qpid_java_exceptions_bz459130/qpid/java/build/lib/qpid-incubating.jar
java -server -DPNAME=QPBRKR -Xmx1024m -Damqj.logging.level=info
-DQPID_HOME=/home/freznice/prjs/rhts_tests/tests/distribution/MRG_Messaging/qpid_java_exceptions_bz459130/qpid/java/build
-DQPID_WORK=/root org.apache.qpid.tools.QpidBench --mode publish
broker = localhost
...
help = false
NP: Thu Nov 27 13:43:11 CET 2008
Exception in thread "Thread-2" java.lang.RuntimeException:
org.apache.qpid.transport.SessionClosedException: session closed
        at org.apache.qpid.tools.QpidBench$2.run(QpidBench.java:460)
Caused by: org.apache.qpid.transport.SessionClosedException: session closed
        at org.apache.qpid.transport.Session.invoke(Session.java:425)
        at
org.apache.qpid.transport.SessionInvoker.messageTransfer(SessionInvoker.java:75)
        at org.apache.qpid.tools.QpidBench.native_publisher(QpidBench.java:765)
        at org.apache.qpid.tools.QpidBench.access$500(QpidBench.java:45)
        at org.apache.qpid.tools.QpidBench$2.run(QpidBench.java:455)


Expected results: 
(something like this)

Exception in thread "Thread-2" java.lang.RuntimeException:
org.apache.qpid.transport.SessionException: [ch=0 id=0
ExecutionException(errorCode=RES
OURCE_LIMIT_EXCEEDED, commandId=8, classCode=0, commandCode=0, fieldIndex=0,
description=resource-limit-exceeded: Policy exceeded for test-queue s
ize: max=1000, current=1024; count unlimited, current=0
(qpid/broker/Queue.cpp:418), errorInfo={})]
        at org.apache.qpid.tools.QpidBench$2.run(QpidBench.java:460)
Caused by: org.apache.qpid.transport.SessionException: [ch=0 id=0
ExecutionException(errorCode=RESOURCE_LIMIT_EXCEEDED, commandId=8, classCode=0,
commandCode=0, fieldIndex=0, description=resource-limit-exceeded: Policy
exceeded for test-queue size: max=1000, current=1024; count unlimited, cu
rrent=0 (qpid/broker/Queue.cpp:418), errorInfo={})]
        at org.apache.qpid.transport.Session.invoke(Session.java:276)
        at org.apache.qpid.transport.Invoker.messageTransfer(Invoker.java:127)
        at org.apache.qpid.tools.QpidBench.native_publisher(QpidBench.java:789)
        at org.apache.qpid.tools.QpidBench.access$500(QpidBench.java:45)
        at org.apache.qpid.tools.QpidBench$2.run(QpidBench.java:455)



Additional info:

This bug is close to bz465213. There was decision that behavior is acceptable for MRG 1.1, but should be improved for MRG 1.1.1 (that's why target is set to 1.1.1)
Comment 1 Frantisek Reznicek 2009-03-06 05:48:41 EST
The bug/bad behavior has been fixed. Validated on RHEL 4.7 / 5.3 i386 / x86_64 on packages: qpidd-0.4.750054-1.el5, qpid-java-client-0.4.750205-1.el5, qpid-java-common-0.4.750205-1.el5

-> VERIFIED

Last Exception dump:

2009-03-05 08:03:52,362 WARN  [IoReceiver - localhost/127.0.0.1:5672] util.Logger (Logger.java:86) - Ignoring the idle timeout 0 set by the connection, using the brokers max value 120
NP: Thu Mar 05 08:03:52 EST 2009    
Exception in thread "Thread-0" java.lang.RuntimeException: org.apache.qpid.transport.SessionException: ch=0 id=0 ExecutionException(errorCode=RESOURCE_LIMIT_EXCEEDED, commandId=125, classCode=0, commandCode=0, fieldIndex=0, description=resource-limit-exceeded: Policy exceeded on test-queue by message 118 of size 1024 , policy: size: max=120000, current=119808; count: unlimited; type=flow_to_disk (qpid/broker/QueuePolicy.cpp:90), errorInfo={})
	at org.apache.qpid.tools.QpidBench$2.run(QpidBench.java:493)
	at java.lang.Thread.run(Thread.java:619)
Caused by: org.apache.qpid.transport.SessionException: ch=0 id=0 ExecutionException(errorCode=RESOURCE_LIMIT_EXCEEDED, commandId=125, classCode=0, commandCode=0, fieldIndex=0, description=resource-limit-exceeded: Policy exceeded on test-queue by message 118 of size 1024 , policy: size: max=120000, current=119808; count: unlimited; type=flow_to_disk (qpid/broker/QueuePolicy.cpp:90), errorInfo={})
	at org.apache.qpid.transport.Session.invoke(Session.java:543)
	at org.apache.qpid.transport.SessionInvoker.messageTransfer(SessionInvoker.java:96)
	at org.apache.qpid.tools.QpidBench.native_publisher(QpidBench.java:810)
	at org.apache.qpid.tools.QpidBench.access$500(QpidBench.java:67)
	at org.apache.qpid.tools.QpidBench$2.run(QpidBench.java:488)
	... 1 more

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