Make L3 agent more responsive to RPC

Registered by Carl Baldwin on 2014-05-23

On agent restart, the L3 agent immediately kicks off a periodic task called
*_sync_routers_task*. This task grabs a semaphore which locks out the
*_rpc_loop* until it is done. This makes the L3 agent unresponsive to new work
coming in via RPC. Floating IPs need to wait to become active or inactive,
router gateways don't get plugged or unplugged, and subnet ports cannot be
manipulated. This gives a poor impression to a user who has just made an API
call to get something done.

Blueprint information

Status:
Complete
Approver:
Kyle Mestery
Priority:
Medium
Drafter:
Carl Baldwin
Direction:
Approved
Assignee:
Carl Baldwin
Definition:
Approved
Series goal:
Accepted for juno
Implementation:
Implemented
Milestone target:
milestone icon 2014.2
Started by
Carl Baldwin on 2014-06-06
Completed by
Kyle Mestery on 2014-07-15

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:l3-prioritize-process-routers,n,z

Addressed by: https://review.openstack.org/78819
    L3 agent prefers RPC messages over full sync

Gerrit topic: https://review.openstack.org/#q,topic:bp/l3-agent-responsiveness,n,z

Addressed by: https://review.openstack.org/95267
    Improve the responsiveness of the L3 agent

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.