Pike Series Release Notes¶
A bug in the
amqppython library can cause the connection to the RabbitMQ broker to hang when using SSL/TLS. This results in frequent errors such as this:
MessagingTimeout: Timed out waiting for a reply to message ID ae039d1695984addbfaaef032ce4fda3
(see bug 1800957).
This bug has been fixed in v2.4.1 of amqp.
It is recommended that deployments using SSL/TLS upgrade the amqp library to v2.4.1 or later.
On rabbitmq, in the past, acknownlegement of messages was done within the application callback thread/greenlet. This thread was blocked until the message was ack. In newton, we rewrote the message acknownlegement to ensure we haven’t two threads writting the the socket at the same times. Now all pendings ack are done by the main thread. They are no more reason to block the application callback thread until the message is ack. Other driver already release the application callback threads before the message is acknownleged. This is also the case for rabbitmq, now.
The blocking executor has been deprecated for removal in Rocky. Its usage was never recommended for applications, and it has no test coverage. Applications should choose the appropriate threading model that maps their usage instead.
The pika driver has been deprecated for removal in Rocky. This driver was developed as a replacement for the default rabbit driver. However testing has not shown any appreciable improvement over the default rabbit driver in terms of performance and stability.
Add get_rpc_transport call to make the API clear for the separation of RPC and Notification messaging backends.
Deprecate get_transport and use get_rpc_transport or get_notification_transport to make the API usage clear for the separation of RPC and Notification messaging backends.
- Retry support for oslo_messaging_notifications driverConfiguration param ‘retry’ is added. Default is -1, indefinite
RequestContextSerializer was deprecated since 4.6, and it isn’t used by any other project, so we can remove it safely.