]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commit
L3 agent should do report state before full sync at start
authorStephen Ma <stephen.ma@hp.com>
Thu, 4 Jun 2015 20:09:23 +0000 (20:09 +0000)
committerstephen-ma <stephen.ma@hp.com>
Tue, 9 Jun 2015 18:36:15 +0000 (18:36 +0000)
commite801eb29d79a8d1f689394756c7870b11ae75c1b
tree5ce9a54705d1d953dcdb0eccfd6709cac2d1aa2e
parentcd0b03fa44e37a054055adefa804d505f51bdf6f
L3 agent should do report state before full sync at start

Sometimes the AgentNotFoundByTypeHost exception is reported during
L3-agent startup. The exception is generated when the first
get_routers RPC call is made. When the neutron server gets this
RPC call, it might not have handled the report state RPC call yet.
So the L3-agent hasn't been registered in the API server.
The result is a RPC Error exception.  By the time the next
get_routers RPC call is made, the report state RPC call has already
been done and agent registered.

This patch modifies the L3 agent startup behavior to have the report
state done before the agent do the sync routers RPC call.

Closes-bug: 1456822
Change-Id: Id40cfd8466f45e20fea0e9df6fd57bf9c9e59da7
(cherry picked from commit b649b9c871d0734745da5a201eca83a6b407a1c5)
neutron/agent/l3/agent.py
neutron/tests/unit/agent/l3/test_agent.py