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
This commit is contained in:
Kenneth Giusti 2017-05-26 13:05:52 -04:00
parent 46f9648261
commit c35fb276ce
3 changed files with 23 additions and 5 deletions

View File

@ -4,6 +4,10 @@ Pika Driver Deployment Guide
.. currentmodule:: oslo_messaging .. 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 Introduction
============ ============

View File

@ -12,6 +12,7 @@
# License for the specific language governing permissions and limitations # License for the specific language governing permissions and limitations
# under the License. # under the License.
from debtcollector import deprecate
from oslo_config import cfg from oslo_config import cfg
from oslo_log import log as logging from oslo_log import log as logging
from oslo_utils import timeutils from oslo_utils import timeutils
@ -127,15 +128,20 @@ rpc_opts = [
class PikaDriver(base.BaseDriver): class PikaDriver(base.BaseDriver):
"""Pika Driver """Pika Driver
The ``pika`` driver is the successor to the existing rabbit/kombu driver. **Warning**: The ``pika`` driver has been deprecated and will be removed in
It is based on the Pika client library and supports the RabbitMQ broker as a future release. It is recommended that all users of the ``pika`` driver
the messaging back end. transition to using the ``rabbit`` driver.
See :doc:`pika_driver` for details.
""" """
def __init__(self, conf, url, default_exchange=None, def __init__(self, conf, url, default_exchange=None,
allowed_remote_exmods=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', opt_group = cfg.OptGroup(name='oslo_messaging_pika',
title='Pika driver options') title='Pika driver options')
conf.register_group(opt_group) conf.register_group(opt_group)

View File

@ -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.