diff --git a/vmware_nsx/plugins/nsx_v/plugin.py b/vmware_nsx/plugins/nsx_v/plugin.py index 570bf4bcaa..66e5acc1aa 100644 --- a/vmware_nsx/plugins/nsx_v/plugin.py +++ b/vmware_nsx/plugins/nsx_v/plugin.py @@ -2849,6 +2849,10 @@ class NsxVPluginV2(addr_pair_db.AllowedAddressPairsMixin, raise n_exc.InvalidInput(error_message=err_msg) def update_router(self, context, router_id, router): + with locking.LockManager.get_lock('router-%s' % router_id): + return self._safe_update_router(context, router_id, router) + + def _safe_update_router(self, context, router_id, router): # Validate that the gateway information is relevant self._extract_external_gw(context, router, is_extract=False) # Toggling the distributed flag is not supported