Able to reproduce on devstack.
Inspecting logs (n-cpu, n-api, q-svc) shows that this is not a neutron issue: q-svc sends vif_plugged event in time (no timeout on n-cpu), n-api accepts the event and sends it to n-cpu by RPC. For some reason n-cpu starts to handle this event when timeout has already occured (several minutes past the event was sent from n-api). Increasing vif_plugging_timeout does not solve the issue, so obviosly there is some race in n-cpu. Will dig more into it.
Able to reproduce on devstack. timeout does not solve the issue, so obviosly there is some race in n-cpu. Will dig more into it.
Inspecting logs (n-cpu, n-api, q-svc) shows that this is not a neutron issue: q-svc sends vif_plugged event in time (no timeout on n-cpu), n-api accepts the event and sends it to n-cpu by RPC. For some reason n-cpu starts to handle this event when timeout has already occured (several minutes past the event was sent from n-api). Increasing vif_plugging_