Bug 695761 - QPID (python) driver goes crazy when VPN dropped between client and broker.
Summary: QPID (python) driver goes crazy when VPN dropped between client and broker.
Keywords:
Status: CLOSED CANTFIX
Alias: None
Product: Pulp
Classification: Retired
Component: z_other
Version: unspecified
Hardware: Unspecified
OS: Unspecified
low
low
Target Milestone: ---
: ---
Assignee: Sayli Karmarkar
QA Contact: Preethi Thomas
URL:
Whiteboard:
Depends On:
Blocks: 673216
TreeView+ depends on / blocked
 
Reported: 2011-04-12 15:44 UTC by Jeff Ortel
Modified: 2015-03-23 01:10 UTC (History)
2 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2012-07-12 20:57:38 UTC
Embargoed:


Attachments (Terms of Use)

Description Jeff Ortel 2011-04-12 15:44:42 UTC
Description of problem:

When dropping the VPN between the qpid broker and a client, the python-qpid driver stack traces in a tight loop.

Doing 'netstat -a' on the broker shows TCP connection still up.
Doing 'netstat -a' on the client shows TCP connection gone.
Doing 'qpid-status -u' on the broker shows connection from client.

machine = F14 (vm)

installed:
qpid-cpp-server-store-0.8-4.fc14.x86_64
qpid-cpp-client-0.8-4.fc14.x86_64
qpid-cpp-server-ssl-0.8-4.fc14.x86_64
qpid-cpp-client-ssl-0.8-4.fc14.x86_64
python-qpid-0.8-3.fc14.noarch
qpid-cpp-server-0.8-4.fc14.x86_64

TRACE:
-------------------------
2011-04-08 15:47:06,834 [ERROR][cds-localhost.localdomain] __fetch() @ consumer.py:90 -
cds-localhost.localdomain
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/gofer/messaging/consumer.py", line 86, in __fetch
return self.receiver.fetch(timeout=self.WAIT)
File "<string>", line 6, in fetch
File "/usr/lib/python2.7/site-packages/qpid/messaging/endpoints.py", line 997, in fetch
self._ecwait(lambda: self.linked)
File "/usr/lib/python2.7/site-packages/qpid/messaging/endpoints.py", line 50, in _ecwait
result = self._ewait(lambda: self.closed or predicate(), timeout)
File "/usr/lib/python2.7/site-packages/qpid/messaging/endpoints.py", line 960, in _ewait
result = self.session._ewait(lambda: self.error or predicate(), timeout)
File "/usr/lib/python2.7/site-packages/qpid/messaging/endpoints.py", line 553, in _ewait
result = self.connection._ewait(lambda: self.error or predicate(), timeout)
File "/usr/lib/python2.7/site-packages/qpid/messaging/endpoints.py", line 196, in _ewait
self.check_error()
File "/usr/lib/python2.7/site-packages/qpid/messaging/endpoints.py", line 189, in check_error
raise self.error
InternalError: Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/qpid/messaging/driver.py", line 648, in write
op.dispatch(self)
File "/usr/lib/python2.7/site-packages/qpid/ops.py", line 84, in dispatch
getattr(target, handler)(self, *args)
File "/usr/lib/python2.7/site-packages/qpid/messaging/driver.py", line 860, in
do_session_detached
sst = self._sessions.pop(dtc.channel)
KeyError: 0

Comment 1 Jeff Ortel 2012-07-12 20:57:38 UTC
This may have been fixed by python-qpid updates.


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