[oslo][stable] Backport of the default value of the config option change

Erno Kuvaja ekuvaja at redhat.com
Wed Aug 17 11:25:39 UTC 2022


On Wed, 17 Aug 2022 at 08:56, Slawek Kaplonski <skaplons at redhat.com> wrote:

> Hi,
>
> Dnia poniedziałek, 8 sierpnia 2022 17:37:05 CEST Dmitriy Rabotyagov pisze:
> > Hey
> >
> > At the very least in OpenStack-Ansible we already handle that case,
> > and have overwritten heartbeat_in_pthread for non-UWSGI services,
> > which is already in stable branches. So backporting this new default
> > setting would make us revert this patch and apply a set of new ones
> > for uWSGI which is kind of nasty thing to do on stable branches.
>
> I'm not sure I understand why You would need to revert changes in
> openstack-ansible if that oslo.messaging patch would be merged. It's "just"
> default value which would be changed but OSA can still configure it
> explicitly to the same value as default if needed, right?
>
> >
> > IIRC (can be wrong here), kolla-ansible and TripleO also adopted such
> > changes in their codebase. So with quite high probability, if you use
> > any deployment tooling, this should be already handled relatively
> > well.
>
> As Sean already mentioned, Tripleo didn't set this value and is using
> default. That's why it hit us now.
> Takashi proposed patch for it:
> https://review.opendev.org/c/openstack/tripleo-heat-templates/+/852713
>
> >
> > We also can post a release note to stable branches about "known issue"
> > instead of backporting a new default.
> >
> > пн, 8 авг. 2022 г. в 12:46, Radosław Piliszek <
> radoslaw.piliszek at gmail.com>:
> > >
> > > Hi all,
> > >
> > > May this config option support "auto" by default and autodetect
> > > whether the application is running under mod_wsgi (and uwsgi if it
> > > also has the issue with green threads but here I'm not really sure...)
> > > and then decide on the best option?
> > > This way I would consider this backporting a fix (i.e. the library
> > > tries better to work in the target environment).
> > >
> > > As a final thought, bear in mind there are operators who have already
> > > overwritten the default, the deployment projects can help as well.
> > >
> > > -yoctozepto
> > >
> > > On Mon, 8 Aug 2022 at 10:30, Rodolfo Alonso Hernandez
> > > <ralonsoh at redhat.com> wrote:
> > > >
> > > > Hello all:
> > > >
> > > > I understand that by default we don't allow backporting a config
> knob default value. But I'm with Sean and his explanation. For "uwsgi"
> applications, if pthread is False, the only drawback will be the
> reconnection of the MQ socket. But in the case described by Slawek, the
> problem is more relevant because once the agent has been disconnected for a
> long time from the MQ, it is not possible to reconnect again and the agent
> needs to be manually restarted. I would backport the patch setting this
> config knob to False.
> > > >
> > > > Regards.
> > > >
> > > >
> > > > On Sat, Aug 6, 2022 at 12:08 AM Sean Mooney <smooney at redhat.com>
> wrote:
> > > >>
> > > >> On Fri, Aug 5, 2022 at 7:40 PM Ghanshyam Mann <
> gmann at ghanshyammann.com> wrote:
> > > >> >
> > > >> >  ---- On Fri, 05 Aug 2022 17:54:25 +0530  Slawek Kaplonski  wrote
> ---
> > > >> >  > Hi,
> > > >> >  >
> > > >> >  > Some time ago oslo.messaging changed default value of the
> "heartbeat_in_pthread" config option to "True" [1].
> > > >> >  > As was noticed some time ago, this don't works well with
> nova-compute - see bug [2] for details.
> > > >> >  > Recently we noticed in our downstream Red Hat OpenStack, that
> it's not only nova-compute which don't works well with it and can hangs. We
> saw the same issue in various neutron agent processes. And it seems that it
> can be the same for any non-wsgi service which is using rabbitmq to send
> heartbeats.
> > > >> >  > So giving all of that, I just proposed change of the default
> value of that config option to be "False" again [3].
> > > >> >  > And my question is - would it be possible and acceptable to
> backport such change up to stable/wallaby (if and when it will be approved
> for master of course). IMO this could be useful for users as using this
> option set as "True" be default don't makes any sense for the non-wsgi
> applications really and may cause more bad then good things really. What
> are You opinions about it?
> > > >> >
> > > >> > This is tricky, in general the default value change should not be
> backported because it change
> > > >> > the default behavior and so does the compatibility. But along
> with considering the cases do not
> > > >> > work with the current default value (you mentioned in this
> email), we should consider if this worked
> > > >> > in any other case or not. If so then I think we should not
> backport this and tell operator to override
> > > >> > it to False as workaround for stable branch fixes.
> > > >> as afar as i am aware the only impact of setting the default to
> false
> > > >> for wsgi applications is
> > > >> running under mod_wsgi or uwsgi may have the heatbeat greenthread
> > > >> killed when the wsgi server susspand the application
> > > >> after a time out following the processing of an api request.
> > > >>
> > > >> there is no known negitive impact to this other then a log message
> > > >> that can safely be ignored on both rabbitmq and the api log relating
> > > >> to the amqp messing connection being closed and repopend.
> > > >>
> > > >> keeping the value at true can cause the nova compute agent, neutron
> > > >> agent and i susppoct nova conductor/schduler to hang following a
> > > >> rabbitmq disconnect.
> > > >> that can leave the relevnet service unresponcei until its restarted.
> > > >>
> > > >> so having the default set to true is known to breake several
> services
> > > >> but tehre are no know issue that are caused by setting it to false
> > > >> that impact the operation fo any service.
> > > >>
> > > >> so i have a stong preference for setting thsi to false by default on
> > > >> stable branches.
> > > >> >
> > > >> > -gmann
> > > >> >
> > > >> >  >
> > > >> >  > [1]
> https://review.opendev.org/c/openstack/oslo.messaging/+/747395
> > > >> >  > [2] https://bugs.launchpad.net/oslo.messaging/+bug/1934937
> > > >> >  > [3]
> https://review.opendev.org/c/openstack/oslo.messaging/+/852251/
> > > >> >  >
> > > >> >  > --
> > > >> >  > Slawek Kaplonski
> > > >> >  > Principal Software Engineer
> > > >> >  > Red Hat
> > > >> >
> > > >>
> > > >>
> > >
> >
> >
>
>
> --
> Slawek Kaplonski
> Principal Software Engineer
> Red Hat
>

Hi All,

+1 from me too for reverting the default value. Sounds like a nasty side
effect with low risk and minor impact (sorry OSA) to fix.

Slawek: I assume OSA did not decide to set it always explicitly but only
when deploying non-wsgi services so they will need to flip the logic around
if the default changes, which is indeed unfortunate. (Set it for wsgi leave
default otherwise from leave it default for wsgi, set false if not)

IMHO your "auto" proposal might be beneficial for future development but
I'd be way more hesitant to greenlight backport for a new feature with new
possible value which widens the risk surface quite significantly than
reverting default value change that broke things.

Thanks all for good conversation!
- jokke
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.openstack.org/pipermail/openstack-discuss/attachments/20220817/50aea71d/attachment-0001.htm>


More information about the openstack-discuss mailing list