diff options
| author | Joshua McKenty <joshua.mckenty@nasa.gov> | 2010-07-16 14:02:37 -0700 |
|---|---|---|
| committer | Joshua McKenty <joshua.mckenty@nasa.gov> | 2010-07-16 14:02:37 -0700 |
| commit | 6892ff871b1a154bbe669bf5cb10eab638fb181b (patch) | |
| tree | 18a49f47f9b0cad4630af5071117f3f153af0ceb | |
| parent | 122fe2b75f635df0aa3858d05ed6775b76a9776e (diff) | |
| download | nova-6892ff871b1a154bbe669bf5cb10eab638fb181b.tar.gz nova-6892ff871b1a154bbe669bf5cb10eab638fb181b.tar.xz nova-6892ff871b1a154bbe669bf5cb10eab638fb181b.zip | |
Ack messages during call so rabbit leaks less.
| -rw-r--r-- | nova/rpc.py | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/nova/rpc.py b/nova/rpc.py index 72a84b7f7..99e820ff3 100644 --- a/nova/rpc.py +++ b/nova/rpc.py @@ -197,7 +197,10 @@ def call(topic, msg): conn = Connection.instance() d = defer.Deferred() consumer = DirectConsumer(connection=conn, msg_id=msg_id) - consumer.register_callback(lambda data, message: d.callback(data)) + def deferred_receive(data, message): + message.ack() + d.callback(data) + consumer.register_callback(deferred_receive) injected = consumer.attach_to_tornado() # clean up after the injected listened and return x |
