commit f11aa037f6c3a4a0ed2c563e4c0a090a469b48c3
Author: Stephen Ma <email address hidden>
Date: Thu Jun 4 20:09:23 2015 +0000
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.
Note: files in the merge conflict list are not in the stable/juno
branch. They were moved during the kilo development cycle:
* neutron/agent/l3_agent.py is moved to neutron/agent/l3/agent.py
in kilo.
* neutron/tests/unit/test_l3_agent.py is moved to
neutron/tests/unit/agent/l3/test_agent.py in kilo.
Reviewed: https:/ /review. openstack. org/191469 /git.openstack. org/cgit/ openstack/ neutron/ commit/ ?id=f11aa037f6c 3a4a0ed2c563e4c 0a090a469b48c3
Committed: https:/
Submitter: Jenkins
Branch: stable/juno
commit f11aa037f6c3a4a 0ed2c563e4c0a09 0a469b48c3
Author: Stephen Ma <email address hidden>
Date: Thu Jun 4 20:09:23 2015 +0000
L3 agent should do report state before full sync at start
Sometimes the AgentNotFoundBy TypeHost 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.
Note: files in the merge conflict list are not in the stable/juno agent/l3_ agent.py is moved to neutron/ agent/l3/ agent.py tests/unit/ test_l3_ agent.py is moved to tests/unit/ agent/l3/ test_agent. py in kilo.
branch. They were moved during the kilo development cycle:
* neutron/
in kilo.
* neutron/
neutron/
Conflicts:
neutron/ agent/l3/ agent.py
neutron/ tests/unit/ agent/l3/ test_agent. py
(cherry picked from commit e801eb29d79a8d1 f689394756c7870 b11ae75c1b) 20fea0e9df6fd57 bf9c9e59da7
Closes-bug: 1456822
Change-Id: Id40cfd8466f45e