File 0001-Async-notify-neutron-server-for-HA-states.patch of Package openstack-neutron

Index: neutron-9.4.2.dev21/neutron/agent/l3/agent.py
===================================================================
--- neutron-9.4.2.dev21.orig/neutron/agent/l3/agent.py
+++ neutron-9.4.2.dev21/neutron/agent/l3/agent.py
@@ -149,7 +149,7 @@ class L3PluginApi(object):
     def update_ha_routers_states(self, context, states):
         """Update HA routers states."""
         cctxt = self.client.prepare(version='1.5')
-        return cctxt.call(context, 'update_ha_routers_states',
+        return cctxt.cast(context, 'update_ha_routers_states',
                           host=self.host, states=states)
 
     def process_prefix_update(self, context, prefix_update):
Index: neutron-9.4.2.dev21/neutron/agent/l3/ha.py
===================================================================
--- neutron-9.4.2.dev21.orig/neutron/agent/l3/ha.py
+++ neutron-9.4.2.dev21/neutron/agent/l3/ha.py
@@ -209,6 +209,9 @@ class AgentMixin(object):
             ri.disable_radvd()
 
     def notify_server(self, batched_events):
+        eventlet.spawn_n(self._notify_server, batched_events)
+
+    def _notify_server(self, batched_events):
         translated_states = dict((router_id, TRANSLATION_MAP[state]) for
                                  router_id, state in batched_events)
         LOG.debug('Updating server with HA routers states %s',
openSUSE Build Service is sponsored by