[openstack-dev] [Neutron] DHCP Agent Reliability

Maru Newby marun at redhat.com
Wed Dec 11 04:39:32 UTC 2013


On Dec 11, 2013, at 8:39 AM, Isaku Yamahata <isaku.yamahata at gmail.com> wrote:

> On Wed, Dec 11, 2013 at 01:23:36AM +0900,
> Maru Newby <marun at redhat.com> wrote:
> 
>> 
>> On Dec 10, 2013, at 6:36 PM, Isaku Yamahata <isaku.yamahata at gmail.com> wrote:
>> 
>>> On Mon, Dec 09, 2013 at 08:43:59AM +1300,
>>> Robert Collins <robertc at robertcollins.net> wrote:
>>> 
>>>>>> listening: when an agent connects after an outage, it first starts
>>>>>> listening, then does a poll for updates it missed.
>>>>> 
>>>>> Are you suggesting that processing of notifications and full state synchronization are able to cooperate safely?  Or hoping that it will be so in the future?
>>>> 
>>>> I'm saying that you can avoid race conditions by a combination of
>>>> 'subscribe to changes' + 'give me the full state'.
>>> 
>>> Like this?
>>> https://review.openstack.org/#/c/61057/
>>> This patch is just to confirm the idea.
>> 
>> I'm afraid the proposed patch is no more reliable than the current approach of using file-based locking.   I am working on an alternate patch that puts the rpc event loop in the dhcp agent so that better coordination between full synchronization and notification handling is possible.  This approach has already been taken with the L3 agent and work on the L2 agent is in process.  
> 
> You objected against agent polling in the discussion.
> But you're now proposing polling now. Did you change your mind?

Uh, no.  I'm proposing better coordination between notification processing and full state synchronization beyond simple exclusionary primitives  (utils.synchronize etc).  I apologize if my language was unclear.  


m.


More information about the OpenStack-dev mailing list