diff options
| author | Nuno Santos <nsantos@apache.org> | 2010-05-03 21:33:43 +0000 |
|---|---|---|
| committer | Nuno Santos <nsantos@apache.org> | 2010-05-03 21:33:43 +0000 |
| commit | 6e0602ce496a96a984bb5302d4dc422a5ba86131 (patch) | |
| tree | dca7c07253d7e68a4a7d4219d9e1bd2593656e16 /qpid | |
| parent | ba639d890426c2b4e96df5aae8785d36fa593429 (diff) | |
| download | qpid-python-6e0602ce496a96a984bb5302d4dc422a5ba86131.tar.gz | |
handle timeouts caused by long-executing commands, iterate until timeout clears
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@940631 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid')
| -rwxr-xr-x | qpid/tools/src/py/qpid-config | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/qpid/tools/src/py/qpid-config b/qpid/tools/src/py/qpid-config index 24a20b0431..f086ab9ac2 100755 --- a/qpid/tools/src/py/qpid-config +++ b/qpid/tools/src/py/qpid-config @@ -566,7 +566,18 @@ except IOError, e: print e sys.exit(1) except Exception,e: - print "Failed: %s: %s" % (e.__class__.__name__, e) - sys.exit(1) - -bm.Disconnect() + if e.__class__.__name__ != "Timeout": + # ignore Timeout exception, handle in the loop below + print "Failed: %s: %s" % (e.__class__.__name__, e) + sys.exit(1) + +while True: + # some commands take longer than the default amqp timeout to complete, + # so attempt to disconnect until successful, ignoring Timeouts + try: + bm.Disconnect() + break + except Exception, e: + if e.__class__.__name__ != "Timeout": + print "Failed: %s: %s" % (e.__class__.__name__, e) + sys.exit(1) |
