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 <
[email protected]> 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
>
>
>
__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: [email protected]?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to