Bug 474169 - exception thrown caused by queue policy exceeded should communicate more precisely the reason
Summary: exception thrown caused by queue policy exceeded should communicate more prec...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise MRG
Classification: Red Hat
Component: qpid-java
Version: 1.1
Hardware: All
OS: Linux
medium
medium
Target Milestone: 1.1.1
: ---
Assignee: Rafael H. Schloming
QA Contact: Kim van der Riet
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2008-12-02 16:20 UTC by Frantisek Reznicek
Modified: 2015-11-16 00:06 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-05-18 11:57:22 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Frantisek Reznicek 2008-12-02 16:20:08 UTC
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 10:48:41 UTC
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.