Assaf, the issue with DHCP agents was solved during initial development of rescheduling of networks.
It was discovered that during network processing DHCP agent spawns lots of greenthreads and greenthread sending state report doesn't receive control for quite a long time which can be enough to consider the agent dead.
With L3 agent we see similar issue. The solution would be to prioritize greenthread responsible for sending agent heartbeats, but I'm not aware of prioritization support in eventlet.
Assaf, the issue with DHCP agents was solved during initial development of rescheduling of networks.
It was discovered that during network processing DHCP agent spawns lots of greenthreads and greenthread sending state report doesn't receive control for quite a long time which can be enough to consider the agent dead.
With L3 agent we see similar issue. The solution would be to prioritize greenthread responsible for sending agent heartbeats, but I'm not aware of prioritization support in eventlet.