summaryrefslogtreecommitdiff
path: root/qpid/python
diff options
context:
space:
mode:
authorErnest Allen <eallen@apache.org>2015-06-10 17:11:49 +0000
committerErnest Allen <eallen@apache.org>2015-06-10 17:11:49 +0000
commit465443a869a1d9ab16cf8109719b9c57a8af3219 (patch)
treed19c02795e814ee9a4ddf8c324bb09b53a852dbc /qpid/python
parent5f09dfc1ddb8c9b1f5943f62afec25f13c32815a (diff)
downloadqpid-python-465443a869a1d9ab16cf8109719b9c57a8af3219.tar.gz
QPID-6297: Python client should reconnect after network glitch
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1684716 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/python')
-rw-r--r--qpid/python/qpid/messaging/driver.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/qpid/python/qpid/messaging/driver.py b/qpid/python/qpid/messaging/driver.py
index 7c30e5d4ba..ff801c2282 100644
--- a/qpid/python/qpid/messaging/driver.py
+++ b/qpid/python/qpid/messaging/driver.py
@@ -591,6 +591,7 @@ class Engine:
self.log_id = "%x" % id(self.connection)
self._closing = False
self._connected = False
+ self._reconnecting = bool(connection.sessions)
self._attachments = {}
self._in = LinkIn()
@@ -874,8 +875,9 @@ class Engine:
else:
raise RuntimeError("all channels used")
sst = SessionState(self, ssn, ssn.name, ch)
- sst.write_op(SessionAttach(name=ssn.name))
+ sst.write_op(SessionAttach(name=ssn.name, force=self._reconnecting))
sst.write_op(SessionCommandPoint(sst.sent, 0))
+ self._reconnecting = False
sst.outgoing_idx = 0
sst.acked = []
sst.acked_idx = 0