This change affects keystone but I think it makes sense to only track the fix against the oslo.cache library. There isn't much keystone can do for this fix since the options are generated from oslo.cache and rendered in the sample configuration file.
Improvement to the configuration option help text should positively impact each project using oslo.cache and not just keystone. Based on the existing help text, it appears that the thread count is the determining factor of what to use. Morgan has some context around oslo.cache and I'm following up with him to see if he had a specific thread count in mind when he wrote that comment [0]. Would it be fair to update the comment with something along the lines of: - Use oslo_cache.memcache_pool for environments running more than X threads - Use dogpile.cache.memcached for environments running less than X threads - Use dogpile.cache.memory for environments isolated to a single process or thread (not recommended for production usage!) [0] https://github.com/openstack/oslo.cache/blob/67c023c0a7fad02608a4db69bf2c12d00cc8f109/oslo_cache/_opts.py#L32-L45 ** Changed in: keystone Status: New => Invalid -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to OpenStack Identity (keystone). https://bugs.launchpad.net/bugs/1690756 Title: cache 'backend' argument description is ambiguous Status in OpenStack Identity (keystone): Invalid Status in oslo.cache: New Bug description: The oslo.cache backend argument description currently states: "Dogpile.cache backend module. It is recommended that Memcache or Redis (dogpile.cache.redis) be used in production deployments. For eventlet-based or highly threaded servers, Memcache with pooling (oslo_cache.memcache_pool) is recommended. For low thread servers, dogpile.cache.memcached is recommended. Test environments with a single instance of the server can use the dogpile.cache.memory backend." So the dogpile.cache.memcached/dogpile.cache.redis backends should be used for production deployments, but the dogpile cache is recommended for low thread servers and the oslo_cache.memcache_pool should be used for high thread servers. I don't understand what the actual recommendation is here. For a production deployment of a service using uwsgi and a web server, what is the recommendation? For a production deployment of a service using uwsgi and no web server, what is the recommendation? For a production deployment of a service using eventlet, what is the recommendation? Using keystone as an example, the example config file has the same content which does not really help to clarify anything: https://github.com/openstack/keystone/blob/b7bd6e301964d393ac6835111a08bbf15ba73bc0/etc/keystone.conf.sample#L514-L520 To manage notifications about this bug go to: https://bugs.launchpad.net/keystone/+bug/1690756/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

