Run rabbitmq heartbeat in python thread by default

Removing the experimental nature of this feature and activating it by default.
Now to run heartbeat in a green thread users should set this option to False.

Also deprecating this option to prepare future removal and force to always run
heartbeat in a python thread whatever the context.

Change-Id: I32a6c4ad0a456282ec02b5e4c8309489b3c17553
This commit is contained in:
Hervé Beraud 2020-08-21 14:08:15 +02:00
parent 8d78ab2339
commit add5ab4ece
2 changed files with 19 additions and 7 deletions

View File

@ -88,14 +88,16 @@ rabbit_opts = [
help='SSL certification authority file '
'(valid only if SSL enabled).'),
cfg.BoolOpt('heartbeat_in_pthread',
default=False,
help="EXPERIMENTAL: Run the health check heartbeat thread "
"through a native python thread. By default if this "
"option isn't provided the health check heartbeat will "
"inherit the execution model from the parent process. By "
"example if the parent process have monkey patched the "
default=True,
help="Run the health check heartbeat thread "
"through a native python thread by default. If this "
"option is equal to False then the health check "
"heartbeat will inherit the execution model "
"from the parent process. For "
"example if the parent process has monkey patched the "
"stdlib by using eventlet/greenlet then the heartbeat "
"will be run through a green thread."),
"will be run through a green thread.",
deprecated_for_removal=True),
cfg.FloatOpt('kombu_reconnect_delay',
default=1.0,
deprecated_group='DEFAULT',

View File

@ -0,0 +1,10 @@
---
upgrade:
- |
The ``[oslo_messaging_rabbit] heartbeat_in_pthread`` config option now
defaults to ``True``.
Applications will run RabbitMQ heartbeat in a Python thread by default.
deprecations:
- |
``heartbeat_in_pthread`` has been deprecated and will be removed in a
future release. If configured, this option should be unset.