Mehdi Abaakouk 2775568e01 rabbit: restore synchronous ack/requeue
Note this change also contains the fix for the regression it
introduced.

In https://review.openstack.org/#/c/436958, we fix a thread safety
issue. But we make the ack/requeue of message asynchronous. In nominal
case, it works, but if network/rabbit connection issue occurs this
can result to rpc call handle twice. By chance we double check already
processed message ids, and drop duplicates, but that if the message
goes to another node, the mitigation won't work.

This restore the previous behavior, to ensure we run application
callback of rpc.call/rpc.cast only when the message have been
successfully ack.

(cherry picked from commit da02bc2169)

Fix rabbitmq driver with blocking executor

We recently move ack/requeue of messages in main/polling thread
of rabbitmq drivers. And break the blocking executor.

This one is not tested by any tests and now deprecated.

This change workaround the issue until we completely remove the
blocking executor.

Closes-bug: #1694728
(cherry picked from commit 8ee5ae135a)

Change-Id: I62b9e09513e3ebfebc64a941d4b21b6c053b511d
2017-06-15 19:51:44 +00:00
2016-11-28 21:14:31 +09:00
2015-09-24 18:11:22 +08:00
2017-01-20 19:15:35 +00:00
2014-06-05 22:48:44 +02:00
2017-01-02 11:34:02 +01:00
2016-11-25 13:19:49 +01:00
2017-01-13 18:13:32 +00:00
2015-09-17 12:16:04 +00:00

Team and repository tags

image

Oslo Messaging Library

Latest Version

Downloads

The Oslo messaging API supports RPC and notifications over a number of different messaging transports.

Description
OpenStack library for messaging
Readme 37 MiB
Languages
Python 99.8%
Shell 0.2%