diff --git a/requirements.txt b/requirements.txt index f4b4d7fb..9c4efd22 100644 --- a/requirements.txt +++ b/requirements.txt @@ -7,7 +7,7 @@ pbr>=1.6 # Apache-2.0 enum34;python_version=='2.7' or python_version=='2.6' or python_version=='3.3' # BSD eventlet!=0.18.3,>=0.18.2 # MIT netaddr!=0.7.16,>=0.7.13 # BSD -retrying!=1.3.0,>=1.2.3 # Apache-2.0 +tenacity>=3.1.1 # Apache-2.0 six>=1.9.0 # MIT neutron-lib>=0.4.0 # Apache-2.0 oslo.i18n>=2.1.0 # Apache-2.0 diff --git a/vmware_nsxlib/v3/utils.py b/vmware_nsxlib/v3/utils.py index a55e48a6..e60c466d 100644 --- a/vmware_nsxlib/v3/utils.py +++ b/vmware_nsxlib/v3/utils.py @@ -13,7 +13,7 @@ # License for the specific language governing permissions and limitations # under the License. -import retrying +import tenacity from neutron_lib import exceptions from oslo_log import log @@ -63,12 +63,13 @@ def update_v3_tags(current_tags, tags_update): return tags -def retry_upon_exception(exc, delay=500, max_delay=2000, +def retry_upon_exception(exc, delay=0.5, max_delay=2, max_attempts=DEFAULT_MAX_ATTEMPTS): - return retrying.retry(retry_on_exception=lambda e: isinstance(e, exc), - wait_exponential_multiplier=delay, - wait_exponential_max=max_delay, - stop_max_attempt_number=max_attempts) + return tenacity.retry(reraise=True, + retry=tenacity.retry_if_exception_type(exc), + wait=tenacity.wait_exponential( + multiplier=delay, max=max_delay), + stop=tenacity.stop_after_attempt(max_attempts)) def list_match(list1, list2):