<p dir="ltr"><br>
On Dec 2, 2013 9:04 PM, "Salvatore Orlando" <<a href="mailto:sorlando@nicira.com">sorlando@nicira.com</a>> wrote:<br>
><br>
> Hi,<br>
><br>
> As you might have noticed, there has been some progress on parallel tests for neutron.<br>
> In a nutshell:<br>
> * Armando fixed the issue with IP address exhaustion on the public network [1]<br>
> * Salvatore has now a patch which has a 50% success rate (the last failures are because of me playing with it) [2]<br>
> * Salvatore is looking at putting back on track full isolation [3]<br>
> * All the bugs affecting parallel tests can be queried here [10]<br>
> * This blueprint tracks progress made towards enabling parallel testing [11]<br>
><br>
> ---------<br>
> The long story is as follows:<br>
> Parallel testing basically is not working because parallelism means higher contention for public IP addresses. This was made worse by the fact that some tests created a router with a gateway set but never deleted it. As a result, there were even less addresses in the public range.<br>
> [1] was already merged and with [4] we shall make the public network for neutron a /24 (the full tempest suite is still showing a lot of IP exhaustion errors).<br>
><br>
> However, this was just one part of the issue. The biggest part actually lied with the OVS agent and its interactions with the ML2 plugin. A few patches ([5], [6], [7]) were already pushed to reduce the number of notifications sent from the plugin to the agent. However, the agent is organised in a way such that a notification is immediately acted upon thus preempting the main agent loop, which is the one responsible for wiring ports into networks. Considering the high level of notifications currently sent from the server, this becomes particularly wasteful if one consider that security membership updates for ports trigger global iptables-save/restore commands which are often executed in rapid succession, thus resulting in long delays for wiring VIFs to the appropriate network.<br>
> With the patch [2] we are refactoring the agent to make it more efficient. This is not production code, but once we'll get close to 100% pass for parallel testing this patch will be split in several patches, properly structured, and hopefully easy to review.<br>
> It is worth noting there is still work to do: in some cases the loop still takes too long, and it has been observed ovs commands taking even 10 seconds to complete. To this aim, it is worth considering use of async processes introduced in [8] as well as leveraging ovsdb monitoring [9] for limiting queries to ovs database.<br>
> We're still unable to explain some failures where the network appears to be correctly wired (floating IP, router port, dhcp port, and VIF port), but the SSH connection fails. We're hoping to reproduce this failure patter locally.<br>
><br>
> Finally, the tempest patch for full tempest isolation should be made usable soon. Having another experimental job for it is something worth considering as for some reason it is not always easy reproducing the same failure modes exhibited on the gate.<br>
><br>
> Regards,<br>
> Salvatore<br>
></p>
<p dir="ltr">Awesome work, thanks for the update.<br></p>
<p dir="ltr">> [1] <a href="https://review.openstack.org/#/c/58054/">https://review.openstack.org/#/c/58054/</a><br>
> [2] <a href="https://review.openstack.org/#/c/57420/">https://review.openstack.org/#/c/57420/</a><br>
> [3] <a href="https://review.openstack.org/#/c/53459/">https://review.openstack.org/#/c/53459/</a><br>
> [4] <a href="https://review.openstack.org/#/c/58284/">https://review.openstack.org/#/c/58284/</a><br>
> [5] <a href="https://review.openstack.org/#/c/58860/">https://review.openstack.org/#/c/58860/</a><br>
> [6] <a href="https://review.openstack.org/#/c/58597/">https://review.openstack.org/#/c/58597/</a><br>
> [7] <a href="https://review.openstack.org/#/c/58415/">https://review.openstack.org/#/c/58415/</a><br>
> [8] <a href="https://review.openstack.org/#/c/45676/">https://review.openstack.org/#/c/45676/</a><br>
> [9] <a href="https://bugs.launchpad.net/neutron/+bug/1177973">https://bugs.launchpad.net/neutron/+bug/1177973</a><br>
> [10] <a href="https://bugs.launchpad.net/neutron/+bugs?field.tag=neutron-parallel&field.tags_combinator=ANY">https://bugs.launchpad.net/neutron/+bugs?field.tag=neutron-parallel&field.tags_combinator=ANY</a><br>
> [11] <a href="https://blueprints.launchpad.net/neutron/+spec/neutron-tempest-parallel">https://blueprints.launchpad.net/neutron/+spec/neutron-tempest-parallel</a><br>
><br>
> _______________________________________________<br>
> OpenStack-dev mailing list<br>
> <a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
> <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
><br>
</p>