Description of problem: --timeout parameter is fully ignored by qpid-stat, as: # grep timeout /usr/bin/qpid-stat group1.add_option("-t", "--timeout", action="store", type="int", default=10, metavar="<secs>", config._connTimeout = opts.timeout # # grep _connTimeout /usr/bin/qpid-stat self._connTimeout = 10 config._connTimeout = opts.timeout # # grep config /usr/bin/qpid-stat config = Config() global config config._types = opts.show config._sortcol = opts.sort_by config._host = opts.broker config._connTimeout = opts.timeout config._increasing = opts.increasing config._limit = opts.limit hostAddr = IpAddr(config._host) if config._sortcol: sorter = Sorter(heads, rows, config._sortcol, config._limit, config._increasing) if config._sortcol: sorter = Sorter(heads, rows, config._sortcol, config._limit, config._increasing) if config._sortcol: sorter = Sorter(heads, rows, config._sortcol, config._limit, config._increasing) if config._sortcol: sorter = Sorter(heads, rows, config._sortcol, config._limit, config._increasing) self.displayMain(names, config._types) bm.SetBroker(config._host) # Anyway I think qpid-python library does not have a support for timeout option, so there cant be simple fix just like "conn_options['reconnect_timeout'] = opts.timeout" or so. Due to this, qpid-stat can run whatever long time in any use case like: - network delays - network packets drops - broker not responding regardless of --timeout setting. Version-Release number of selected component (if applicable): any, tested e.g. on qpid-tools-1.36.0-19.el7.noarch How reproducible: 100% Steps to Reproduce: Well it depends what we want from --timeout, what use case it should react on. Two of them provided here: 1. (broker stuck for 10s) kill -SIGSTOP $(pgrep qpidd) time qpid-stat --memory --timeout=2 --broker=localhost:5672 & sleep 10 kill -SIGCONT $(pgrep qpidd) 2. (network delays) tc qdisc add dev lo root handle 1:0 netem delay 2000msec time qpid-stat --memory --timeout=1 --broker=localhost:5672 tc qdisc del dev lo root handle 1:0 netem delay 2000msec Actual results: 1. qpid-stat takes bit more than 10s, regardless of --timeout setting 2. qpid-stat takes approx. 8s (depending on kernel tuning), regardless of --timeout setting Expected results: In agreed use cases, qpid-stat to terminate within --timeout limit. Or remove the option completely. Additional info: