176503e610
When: * the segments service plugin is enabled and * we have multiple rpc worker processes (as in the sum of rpc_workers and rpc_state_report_workers, since both kind processes agent state_reports) and * many ovs-agents report physnets, then rabbitmq dispatches the state_report messages between the workers in a round robin fashion, therefore eventually the state_reports of the same agent will hit all rpc workers. Unfortunately all worker processes have a 'reported_hosts' set to remember from which host it has seen agent reports already. But right after a server start when that set is still empty, each worker will unconditionally write the received physnet-segment information into the db. This means we multiply the load on the db and rpc workers by a factor of the rpc worker count. This patch tries to reduce the load on the db by adding another early return before the unconditional db write. Change-Id: I935186b6ee95f0cae8dc05869d9742c8fb3353c3 Closes-Bug: #1952730 |
||
---|---|---|
.. | ||
__init__.py | ||
db.py | ||
exceptions.py | ||
plugin.py |