[openstack-dev] oslo removal of use_tpool conf option

Joshua Harlow harlowja at yahoo-inc.com
Thu Apr 17 23:26:16 UTC 2014


Just an honest question (no negativity intended I swear!).

If a configuration option exists and only works with a patched eventlet why is that option an option to begin with? (I understand the reason for the patch, don't get me wrong).

Most users would not be able to use such a configuration since they do not have this patched eventlet (I assume a newer version of eventlet someday in the future will have this patch integrated in it?) so although I understand the frustration around this I don't understand why it would be an option in the first place. An aside, if the only way to use this option is via a non-standard eventlet then how is this option tested in the community, aka outside of said company?

An example:

If yahoo has some patched kernel A that requires an XYZ config turned on in openstack and the only way to take advantage of kernel A is with XYZ config 'on', then it seems like that’s a yahoo only patch that is not testable and useable for others, even if patched kernel A is somewhere on github it's still imho not something that should be a option in the community (anyone can throw stuff up on github and then say I need XYZ config to use it).

To me non-standard patches that require XYZ config in openstack shouldn't be part of the standard openstack, no matter the company. If patch A is in the mainline kernel (or other mainline library), then sure it's fair game.

-Josh

From: Chris Behrens <cbehrens at codestud.com<mailto:cbehrens at codestud.com>>
Reply-To: "OpenStack Development Mailing List (not for usage questions)" <openstack-dev at lists.openstack.org<mailto:openstack-dev at lists.openstack.org>>
Date: Thursday, April 17, 2014 at 3:20 PM
To: OpenStack Development Mailing List <openstack-dev at lists.openstack.org<mailto:openstack-dev at lists.openstack.org>>
Subject: [openstack-dev] oslo removal of use_tpool conf option


I’m going to try to not lose my cool here, but I’m extremely upset by this.

In December, oslo apparently removed the code for ‘use_tpool’ which allows you to run DB calls in Threads because it was ‘eventlet specific’. I noticed this when a review was posted to nova to add the option within nova itself:

https://review.openstack.org/#/c/59760/

I objected to this and asked (more demanded) for this to be added back into oslo. It was not. What I did not realize when I was reviewing this nova patch, was that nova had already synced oslo’s change. And now we’ve released Icehouse with a conf option missing that existed in Havana. Whatever projects were using oslo’s DB API code has had this option disappear (unless an alternative was merged). Maybe it’s only nova.. I don’t know.

Some sort of process broke down here.  nova uses oslo.  And oslo removed something nova uses without deprecating or merging an alternative into nova first. How I believe this should have worked:

1) All projects using oslo’s DB API code should have merged an alternative first.
2) Remove code from oslo.
3) Then sync oslo.

What do we do now? I guess we’ll have to back port the removed code into nova. I don’t know about other projects.

NOTE: Very few people are probably using this, because it doesn’t work without a patched eventlet. However, Rackspace happens to be one that does. And anyone waiting on a new eventlet to be released such that they could use this with Icehouse is currently out of luck.

- Chris


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20140417/19fdd177/attachment.html>


More information about the OpenStack-dev mailing list