Bug 461816

Summary: Broker sends message.transfer after sending a session.detach
Product: Red Hat Enterprise MRG Reporter: Gordon Sim <gsim>
Component: qpid-cppAssignee: Gordon Sim <gsim>
Status: CLOSED ERRATA QA Contact: Kim van der Riet <kim.vdriet>
Severity: urgent Docs Contact:
Priority: urgent    
Version: 1.0CC: freznice
Target Milestone: 1.1   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-02-04 15:35:17 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Test case
none
qpid_test_msg_trasfer_after_session_detach_bz461816 failing test none

Description Gordon Sim 2008-09-10 20:03:57 UTC
It should not send anything after the detach (or indeed after the execution.exception).

Comment 1 Gordon Sim 2008-10-30 11:27:44 UTC
Also tracked by https://issues.apache.org/jira/browse/QPID-1413

Comment 2 Gordon Sim 2008-11-06 17:45:57 UTC
Created attachment 322765 [details]
Test case

This is quite hard to observe from an application. I was discovered when using the python client and the attached application emulates that use case. As the channel is reused, transfers that arrive after the detach is sent cause problems for the subsequently attached sessions.

The failure exhibits itself when running this test app by something like the following:

Exception in thread Thread-2:
Traceback (most recent call last):
  File "/usr/lib/python2.4/threading.py", line 442, in __bootstrap
    self.run()
  File "/usr/lib/python2.4/threading.py", line 422, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/home/gordon/qpid/trunk/qpid/python/qpid/connection.py", line 175, in run
    self.delegate.received(seg)
  File "/home/gordon/qpid/trunk/qpid/python/qpid/delegates.py", line 50, in received
    ssn.received(seg)
  File "/home/gordon/qpid/trunk/qpid/python/qpid/session.py", line 220, in received
    self.receiver.received(seg)
  File "/home/gordon/qpid/trunk/qpid/python/qpid/session.py", line 280, in received
    raise Exception("todo")
Exception: todo

Comment 3 Gordon Sim 2008-11-06 18:25:27 UTC
Fixed by r711931. Attached test case runs without error.

Comment 4 Frantisek Reznicek 2008-11-10 11:40:17 UTC
Created attachment 323058 [details]
qpid_test_msg_trasfer_after_session_detach_bz461816 failing test

Comment 5 Frantisek Reznicek 2008-11-10 11:41:08 UTC
RHTS test qpid_test_msg_trasfer_after_session_detach_bz461816 almost finished.
The result of the test shows that issue is not gone.

See attached current state of test including logfile (python core test logfile & qpidd trace log)
See common_transcript lines 9173-9188.

Observed on RHEL5.2 x86_64, qpidd-0.3.711915-2.el5, rhm-0.2.2694-1.el5

Comment 6 Frantisek Reznicek 2008-11-10 13:59:49 UTC
RHTS test qpid_test_msg_trasfer_after_session_detach_bz461816 updated and qpidd version updated to revision > 711931.
Test passing on multiple machines (RHEL4.7/5.2 i386/x86_64).
-> VERIFIED

Comment 8 errata-xmlrpc 2009-02-04 15:35:17 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/RHEA-2009-0035.html