diff options
Diffstat (limited to 'neutron/plugins/bigswitch/servermanager.py')
-rw-r--r-- | neutron/plugins/bigswitch/servermanager.py | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/neutron/plugins/bigswitch/servermanager.py b/neutron/plugins/bigswitch/servermanager.py index c10ce72bb5..7b43ccfbcd 100644 --- a/neutron/plugins/bigswitch/servermanager.py +++ b/neutron/plugins/bigswitch/servermanager.py @@ -473,6 +473,13 @@ class ServerPool(object): 'data': ret[3]}) active_server.failed = True + # A failure on a delete means the object is gone from Neutron but not + # from the controller. Set the consistency hash to a bad value to + # trigger a sync on the next check. + # NOTE: The hash must have a comma in it otherwise it will be ignored + # by the backend. + if action == 'DELETE': + hash_handler.put_hash('INCONSISTENT,INCONSISTENT') # All servers failed, reset server list and try again next time LOG.error(_('ServerProxy: %(action)s failure for all servers: ' '%(server)r'), |