Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 455318 - A tx commit fails without a proper error message when a queue runs out of capacity
Summary: A tx commit fails without a proper error message when a queue runs out of cap...
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.3
: ---
Assignee: Rajith Attapattu
QA Contact: Jiri Kolar
URL:
Whiteboard:
: 481776 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2008-07-14 19:49 UTC by Rajith Attapattu
Modified: 2010-10-14 16:14 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
A transaction commit failed without a proper error message when a queue ran out of capacity. The correct error message was not displayed on the client side, hence it was difficult to determine the exact cause without looking at the broker log. With this update, the client now goes into the CLOSED state instead of the DETACHED state when there is an execution exception and prints/notifies the correct exception when a transaction commit fails due the queue capacity being exceeded.
Clone Of:
Environment:
Last Closed: 2010-10-14 16:14:57 UTC


Attachments (Terms of Use)


Links
System ID Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2010:0773 normal SHIPPED_LIVE Moderate: Red Hat Enterprise MRG Messaging and Grid Version 1.3 2010-10-14 15:56:44 UTC

Description Rajith Attapattu 2008-07-14 19:49:35 UTC
The following error was shown in the broker side 
error Failed to prepare: Enqueue capacity threshold exceeded on queue
"testQueueD". (JournalImpl.cpp:478)

However on the client side the error text was not helpful.
Can we include the error msg show on the broker side in the description field in
the error message sent to the client?
This will greatly help in debugging for a customer.

Error when running test [id=1 ExecutionException(errorCode=INTERNAL_ERROR,
commandId=69092, classCode=5, commandCode=2, fieldIndex=0,
description=internal-error: Commit failed (qpid/broker/SemanticState.cpp:126),
errorInfo={})]
org.apache.qpidity.transport.SessionException: [id=1
ExecutionException(errorCode=INTERNAL_ERROR, commandId=69092, classCode=5,
commandCode=2, fieldIndex=0, description=internal-error: Commit failed
(qpid/broker/SemanticState.cpp:126), errorInfo={})]

Comment 1 Gordon Sim 2009-02-17 17:22:42 UTC
*** Bug 481776 has been marked as a duplicate of this bug. ***

Comment 2 Rajith Attapattu 2009-05-04 23:03:50 UTC
This is not related to Bug 481776.
This was fixed by a commit made by rhs in rev 749740 of the Qpid trunk.

The real underlying issue was that the JMS client was ignoring any execution exception it received and remained in DETACHED state.
The fix made the client go into CLOSED instead of DETACHED state when there is an execution exception.

Comment 5 Jiri Kolar 2010-04-07 13:32:38 UTC
Tested:
on qpid-java-client-0.4.741135-1.el5  bug appears
on qpid-java-client-0.7.918215-1.el5 does not. It has been fixed, error is thrown

validated on RHEL  5.5 x86_64 only  because of lack of those old packages for other systems/archs

packages:

# rpm -qa | grep -E '(qpid|openais|rhm)' | sort -u
openais-0.80.6-16.el5
openais-debuginfo-0.80.6-16.el5
python-qpid-0.7.917557-4.el5
qpid-cpp-client-0.7.916826-2.el5
qpid-cpp-client-devel-0.7.916826-2.el5
qpid-cpp-client-devel-docs-0.7.916826-2.el5
qpid-cpp-client-ssl-0.7.916826-2.el5
qpid-cpp-mrg-debuginfo-0.7.916826-2.el5
qpid-cpp-server-0.7.916826-2.el5
qpid-cpp-server-cluster-0.7.916826-2.el5
qpid-cpp-server-devel-0.7.916826-2.el5
qpid-cpp-server-ssl-0.7.916826-2.el5
qpid-cpp-server-store-0.7.916826-2.el5
qpid-cpp-server-xml-0.7.916826-2.el5
qpid-dotnet-0.4.738274-2.el5
qpid-java-client-0.7.918215-1.el5
qpid-java-common-0.7.918215-1.el5
qpid-tests-0.7.917717-4.el5
qpid-tools-0.7.917557-4.el5

->VERIFIED

Comment 6 Jiri Kolar 2010-04-13 15:53:08 UTC
To make it clear I reproduced on RHEL  5.5 x86_64 only but validated on  5.5 i386 / x86_64  and
 RHEL  4.8 i386 / x86_64

Comment 7 Rajith Attapattu 2010-10-07 18:18:19 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:
Cause: A transaction commit fails without a proper error message when a queue runs out of capacity

Consequence: The correct error message was not displayed on the client side, hence it was difficult to determine the exact cause without looking at the broker log.

Fix: The client now goes into CLOSED instead of DETACHED state when there is an execution exception.


Result: The client now prints/notifies the correct exception when a transaction commit fails due the queue capacity being exceeded.

Comment 8 Martin Prpič 2010-10-10 11:29:14 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,8 +1 @@
-Cause: A transaction commit fails without a proper error message when a queue runs out of capacity
+A transaction commit failed without a proper error message when a queue ran out of capacity. The correct error message was not displayed on the client side, hence it was difficult to determine the exact cause without looking at the broker log. With this update, the client now goes into the CLOSED state instead of the DETACHED state when there is an execution exception and prints/notifies the correct exception when a transaction commit fails due the queue capacity being exceeded.-
-Consequence: The correct error message was not displayed on the client side, hence it was difficult to determine the exact cause without looking at the broker log.
-
-Fix: The client now goes into CLOSED instead of DETACHED state when there is an execution exception.
-
-
-Result: The client now prints/notifies the correct exception when a transaction commit fails due the queue capacity being exceeded.

Comment 10 errata-xmlrpc 2010-10-14 16:14:57 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHSA-2010-0773.html


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