Well, then see what I have in impl_rabbit.py (kolla-ansible 11, newest container images, Victoria): 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 " "stdlib by using eventlet/greenlet then the heartbeat " "will be run through a green thread."), 1. It is disabled by default, so heartbeats run through green thread? 2. Why enabling it didn’t change anything? 3. heartbeat = 600 for rabbit resolved problem for now (but I’ve seen 1-2 timeouts after 2 days anyway), but 10-minute timeout is kind of big, so I would like to use another solution Best regards Adam Tomas
Wiadomość napisana przez Sean Mooney <smooney@redhat.com> w dniu 22.09.2021, o godz. 21:05:
On Wed, 2021-09-22 at 11:22 -0500, Ben Nemec wrote:
On 9/21/21 2:44 AM, bkslash wrote:
So there are two questions:
1. Why heartbeat_in_pthread didn’t change situation? And if it’s deprecated it was kind of risky to use it long term (after upgrade to wallaby it would stop working anyway?)
It's deprecated because it became the default behavior in subsequent releases. The functionality is not going away, just the ability to turn it off.
The only reason it was ever configurable was that we had concerns about mixing pthreads and greenthreads and wanted the people affected by the original bug to test the combination for a couple of releases before we turned it on for everyone.
actully the ablity to trun it off is not going away either turing it on can break the nova comptue agent by breaking eventlet. https://bugs.launchpad.net/oslo.messaging/+bug/1934937 here is the patch to undeprecate it https://review.opendev.org/c/openstack/oslo.messaging/+/800621 based on the bug above this looke like it should be turned off unless you runing under mod_wsgi or uwsgi where the pthread is needed to escape there treadign lifecycle.