From c35fb276ce75479792dc3d4b8e89cfb62aed06ae Mon Sep 17 00:00:00 2001 From: Kenneth Giusti Date: Fri, 26 May 2017 13:05:52 -0400 Subject: [PATCH] Mark the Pika driver as deprecated The Pika driver was intended to be a more stable and performant replacement for the default rabbit driver. However due to lack of both maintainers and compelling evidence that pika is superior to the existing rabbit driver in either performance or stability it has been deprecated for removal. See: http://lists.openstack.org/pipermail/openstack-dev/2017-May/116679.html Change-Id: I98e0123edd3248be665325833283689fc3a897f7 --- doc/source/pika_driver.rst | 4 ++++ oslo_messaging/_drivers/impl_pika.py | 16 +++++++++++----- ...ver-has-been-deprecated-e2407fa53c91fe5c.yaml | 8 ++++++++ 3 files changed, 23 insertions(+), 5 deletions(-) create mode 100644 releasenotes/notes/pika-driver-has-been-deprecated-e2407fa53c91fe5c.yaml diff --git a/doc/source/pika_driver.rst b/doc/source/pika_driver.rst index 646fe92b8..b89fabd28 100644 --- a/doc/source/pika_driver.rst +++ b/doc/source/pika_driver.rst @@ -4,6 +4,10 @@ Pika Driver Deployment Guide .. currentmodule:: oslo_messaging +.. warning:: the Pika driver is no longer maintained and will be + removed from Oslo.Messaging at a future date. It is recommended that + all users of the Pika driver transition to using the Rabbit driver. + ============ Introduction ============ diff --git a/oslo_messaging/_drivers/impl_pika.py b/oslo_messaging/_drivers/impl_pika.py index 0d413b41a..65e7b48da 100644 --- a/oslo_messaging/_drivers/impl_pika.py +++ b/oslo_messaging/_drivers/impl_pika.py @@ -12,6 +12,7 @@ # License for the specific language governing permissions and limitations # under the License. +from debtcollector import deprecate from oslo_config import cfg from oslo_log import log as logging from oslo_utils import timeutils @@ -127,15 +128,20 @@ rpc_opts = [ class PikaDriver(base.BaseDriver): """Pika Driver - The ``pika`` driver is the successor to the existing rabbit/kombu driver. - It is based on the Pika client library and supports the RabbitMQ broker as - the messaging back end. - - See :doc:`pika_driver` for details. + **Warning**: The ``pika`` driver has been deprecated and will be removed in + a future release. It is recommended that all users of the ``pika`` driver + transition to using the ``rabbit`` driver. """ def __init__(self, conf, url, default_exchange=None, allowed_remote_exmods=None): + + deprecate("The pika driver is no longer maintained. It has been" + " deprecated", + message="It is recommended that all users of the pika driver" + " transition to using the rabbit driver.", + version="pike", removal_version="rocky") + opt_group = cfg.OptGroup(name='oslo_messaging_pika', title='Pika driver options') conf.register_group(opt_group) diff --git a/releasenotes/notes/pika-driver-has-been-deprecated-e2407fa53c91fe5c.yaml b/releasenotes/notes/pika-driver-has-been-deprecated-e2407fa53c91fe5c.yaml new file mode 100644 index 000000000..b4257780d --- /dev/null +++ b/releasenotes/notes/pika-driver-has-been-deprecated-e2407fa53c91fe5c.yaml @@ -0,0 +1,8 @@ +--- +deprecations: + - 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. +