diff options
| -rw-r--r-- | nova/rpc/amqp.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/nova/rpc/amqp.py b/nova/rpc/amqp.py index cfa4ad1c1..ac29a625d 100644 --- a/nova/rpc/amqp.py +++ b/nova/rpc/amqp.py @@ -38,6 +38,7 @@ from nova import flags from nova import log as logging from nova.openstack.common import local import nova.rpc.common as rpc_common +from nova import utils LOG = logging.getLogger(__name__) @@ -293,7 +294,11 @@ class MulticallWaiter(object): if self._done: raise StopIteration while True: - self._iterator.next() + try: + self._iterator.next() + except Exception: + with utils.save_and_reraise_exception(): + self.done() if self._got_ending: self.done() raise StopIteration |
