neutron/neutron/tests/unit
Robert Kukura b1677dcb80 ML2: Bind ports outside transactions
The ML2 plugin now calls the bind_port() operation on the registered
mechanism drivers outside of any enclosing DB transaction. Ports are
created or updated in one transaction, then a binding is established
if possible, and finally a second transaction commits the binding
result.

With [re]binding moved outside the DB transaction that triggered it,
it is now possible that multiple threads or processes will
concurrently try to bind the same port, or that the port will be
updated between transactions. Concurrent attempts to bind the same
port are allowed to proceed, which results are used is resolved in the
second transaction, and binding is retried if necessary.

Improvements to the Cisco Nexus driver and unit tests from Rich Curran
needed due to the binding changes are also included.

Closes-Bug: 1276391
Closes-Bug: 1335226
Change-Id: I65dafc330d6e812dad0667d2383858504d0ba299
2014-07-14 15:13:52 -04:00
..
agent Fix OVSBridge.get_port_ofport to handle empty output 2014-07-01 23:57:20 +00:00
api Fix misleading error message about failed dhcp notifications 2014-03-17 16:32:44 -07:00
bigswitch Merge "Big Switch: Lock consistency table for REST calls" 2014-06-29 03:26:26 +00:00
brocade Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
cisco Extract CommonDBMixin to a separate file 2014-07-10 13:04:30 +04:00
db Merge "Replace occurences of 'test_tenant' with 'test-tenant' in tests" 2014-06-30 20:31:21 +00:00
embrane Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
extensions Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
hyperv Introduce bulk calls for get device details 2014-06-25 21:33:10 +00:00
ibm Merge "Fixes bugs for requests sent to SDN-VE controller" 2014-05-27 00:07:11 +00:00
linuxbridge lb-agent: ensure removed devices get treated on resyncs 2014-06-30 06:32:17 +00:00
metaplugin Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
midonet Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
ml2 ML2: Bind ports outside transactions 2014-07-14 15:13:52 -04:00
mlnx Introduce bulk calls for get device details 2014-06-25 21:33:10 +00:00
nec Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
notifiers Replace loopingcall in notifier with a delayed send 2014-04-22 16:22:02 +00:00
nuage Change default netpartition behavior in nuage plugin 2014-06-13 13:45:28 -07:00
ofagent ofagent: Use port desc to monitor ports on br-int 2014-06-26 12:29:01 +09:00
oneconvergence Merge "Trigger provider security group update for RA" 2014-07-05 01:15:52 +00:00
openvswitch Do not mark device as processed if it wasn't 2014-07-08 08:24:15 -07:00
plumgrid Fixed dhcp & gateway ip conflict in PLUMgrid plugin 2014-06-25 14:41:22 -07:00
ryu Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
services Revert "VPNaaS REST Client UT Broken" 2014-07-11 11:21:14 -07:00
vmware NSX: neutron router-interface-add should clear security-groups 2014-07-09 10:02:09 -07:00
__init__.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
_test_extension_portbindings.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
_test_rootwrap_exec.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
database_stubs.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
dummy_plugin.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
extension_stubs.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_agent_config.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_agent_ext_plugin.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_agent_linux_utils.py Make linux.utils.execute log error on return codes 2014-05-28 18:49:53 -07:00
test_agent_netns_cleanup.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_agent_ovs_cleanup.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_agent_rpc.py Introduce bulk calls for get device details 2014-06-25 21:33:10 +00:00
test_api_api_common.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_api_v2.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_api_v2_extension.py tests/unit: refactor reading neutron.conf.test 2014-05-01 11:20:18 +09:00
test_api_v2_resource.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_attributes.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_auth.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_common_log.py Make neutron.common.log.log print module path 2013-09-07 02:10:57 +09:00
test_common_utils.py Common decorator for caching methods 2014-05-22 13:17:51 +02:00
test_config.py Utilizes assertIsNone and assertIsNotNone 2013-10-23 10:59:16 +08:00
test_db_migration.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_db_plugin.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_db_rpc_base.py Switch to using of oslo.db 2014-06-30 14:07:59 +03:00
test_debug_commands.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_dhcp_agent.py Moved rpc_compat.py code back into rpc.py 2014-06-24 10:35:39 +02:00
test_dhcp_scheduler.py Fix auto_schedule_networks to resist DBDuplicateEntry 2014-06-20 13:20:20 +04:00
test_extension_allowedaddresspairs.py Allowed address pair: Removing check for overlap with fixed ips 2014-06-12 09:43:09 +08:00
test_extension_ext_gw_mode.py Remove mock.patch.stop from tests that inherit from BaseTestCase 2014-04-10 11:40:56 +00:00
test_extension_ext_net.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_extension_extended_attribute.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_extension_extradhcpopts.py extra_dhcp_opt add checks for empty strings 2013-12-13 08:40:28 -07:00
test_extension_extraroute.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_extension_firewall.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_extension_pnet.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_extension_portsecurity.py Fix H302 violations in unit tests 2014-05-04 12:39:19 +02:00
test_extension_security_group.py Fix isinstance assertions 2014-07-02 12:25:00 +02:00
test_extensions.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_hacking.py Add missing translation support 2014-05-19 12:16:56 +02:00
test_iptables_firewall.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_iptables_manager.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_ipv6.py Calculate stateless IPv6 address 2014-03-17 15:48:46 -04:00
test_l3_agent.py Fix UnboundLocalError raised during L3 router sync task 2014-07-02 07:04:57 -07:00
test_l3_plugin.py Merge "Remove dead helper function from test_l3_plugin" 2014-07-11 21:10:25 +00:00
test_l3_schedulers.py UT: do not hide an original error in test resource ctxtmgr 2014-03-28 05:49:13 +00:00
test_linux_daemon.py Make pid file locking non-blocking 2014-05-21 13:29:01 -07:00
test_linux_dhcp.py Omit mode keyword when spawning dnsmasq with some ipv6 subnets 2014-07-03 18:19:27 +04:00
test_linux_external_process.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_linux_interface.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_linux_ip_lib.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_metadata_agent.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_metadata_namespace_proxy.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_neutron_context.py Remove mock.patch.stop from tests that inherit from BaseTestCase 2014-04-10 11:40:56 +00:00
test_neutron_manager.py Fix isinstance assertions 2014-07-02 12:25:00 +02:00
test_policy.py Consistently use jsonutils instead of specific implementation 2014-06-16 09:18:52 +02:00
test_post_mortem_debug.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_provider_configuration.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_quota_ext.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_routerserviceinsertion.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_security_groups_rpc.py Merge "Trigger provider security group update for RA" 2014-07-05 01:15:52 +00:00
test_servicetype.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
test_wsgi.py Remove the useless vim modelines 2014-06-21 15:07:31 +08:00
testlib_api.py add portbinding host into vip port 2013-09-25 14:41:31 +08:00