fed48aea44
The blocking executor has been deprecated in Pike and marked for removal in Rocky, but some user like Mistral asked us to wait before. We decided to remove this executor for Train or next cycle, now we are in the Ussuri and after some researchs on usage I think we can go ahead. This patch drop the deprecation warnings, related unit tests and set the server with the threading executor is the default executor. Change-Id: If07bab61ee2b148658b88be98b12f8539f274efe Closes-Bug: #1715141
76 lines
2.0 KiB
Python
76 lines
2.0 KiB
Python
|
|
# Copyright 2013 Red Hat, Inc.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
# not use this file except in compliance with the License. You may obtain
|
|
# a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations
|
|
# under the License.
|
|
|
|
import logging
|
|
|
|
from oslo_utils import eventletutils
|
|
|
|
LOG = logging.getLogger(__name__)
|
|
|
|
|
|
def version_is_compatible(imp_version, version):
|
|
"""Determine whether versions are compatible.
|
|
|
|
:param imp_version: The version implemented
|
|
:param version: The version requested by an incoming message.
|
|
"""
|
|
if imp_version is None:
|
|
return True
|
|
|
|
if version is None:
|
|
return False
|
|
|
|
version_parts = version.split('.')
|
|
imp_version_parts = imp_version.split('.')
|
|
try:
|
|
rev = version_parts[2]
|
|
except IndexError:
|
|
rev = 0
|
|
try:
|
|
imp_rev = imp_version_parts[2]
|
|
except IndexError:
|
|
imp_rev = 0
|
|
|
|
if int(version_parts[0]) != int(imp_version_parts[0]): # Major
|
|
return False
|
|
if int(version_parts[1]) > int(imp_version_parts[1]): # Minor
|
|
return False
|
|
if (int(version_parts[1]) == int(imp_version_parts[1]) and
|
|
int(rev) > int(imp_rev)): # Revision
|
|
return False
|
|
return True
|
|
|
|
|
|
class DummyLock(object):
|
|
def acquire(self):
|
|
pass
|
|
|
|
def release(self):
|
|
pass
|
|
|
|
def __enter__(self):
|
|
self.acquire()
|
|
|
|
def __exit__(self, type, value, traceback):
|
|
self.release()
|
|
|
|
|
|
def get_executor_with_context():
|
|
if eventletutils.is_monkey_patched('thread'):
|
|
LOG.debug("Threading is patched, using an eventlet executor")
|
|
return 'eventlet'
|
|
LOG.debug("Using a threading executor")
|
|
return 'threading'
|