[openstack-dev] [Neutron] Issue with neutron-dhcp-agent not recovering known ports cache after restart

Shraddha Pandhe spandhe.openstack at gmail.com
Wed Jul 1 18:28:17 UTC 2015


Hi,

I had a discussion about this with Kevin Benton on IRC. Filed a bug:
https://bugs.launchpad.net/neutron/+bug/1470612

Thanks!


On Wed, Jul 1, 2015 at 11:03 AM, Shraddha Pandhe <
spandhe.openstack at gmail.com> wrote:

> Hi Shihan,
>
> I think the problem is slightly different. Does your patch take care of
> the scenario where a port was deleted  AFTER agent restart (not when agent
> was down)?
>
> My problem is that, when the agent restarts, it loses its previous network
> cache. As soon as the agent starts, as part of "__init__", it rebuilds that
> cache [1]. But it does not put the ports in there [2].
>
> In sync_state, Neutron tries to enable/disable networks, by checking the
> diff between Neutron's state and its own network cache that it just built
> [3]. It enables any NEW networks and disables any DELETED networks, but it
> does nothing to PREVIOUSLY KNOWN NETWORKS. So those subnets and ports
> remain empty lists.
>
> Now, if such a port is deleted, [4] will return None and the port will
> never get deleted from the config.
>
> [1]
> https://github.com/openstack/neutron/blob/master/neutron/agent/dhcp/agent.py#L68
> [2]
> https://github.com/openstack/neutron/blob/master/neutron/agent/dhcp/agent.py#L79-L86
> [3]
> https://github.com/openstack/neutron/blob/master/neutron/agent/dhcp/agent.py#L154-L171
> [4]
> https://github.com/openstack/neutron/blob/master/neutron/agent/dhcp/agent.py#L349
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20150701/7c45f984/attachment.html>


More information about the OpenStack-dev mailing list