Reviewed: https://review.openstack.org/255017 Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=f218929bc5126466b2a79b56d32e9cf042aa176d Submitter: Jenkins Branch: master
commit f218929bc5126466b2a79b56d32e9cf042aa176d Author: Brandon Logan <[email protected]> Date: Tue Dec 8 18:24:28 2015 -0600 Force service provider relationships to load A race condition was exposed in the LBaaS V2 db layer that was caused by a hack to get around this issue. The real issue is that since the ProviderResourceAssociation is inserted independently, any models that were created before this insert will not have their relationship with the ProviderResourceAssocation loaded. Using the session.expire_all method will force the session to retrieve all new data and load this relationship for any resource that uses this relationship. Change-Id: I940b541f4ef9c489126cd2d215b1d857f0624de0 Closes-Bug: #1504465 ** Changed in: neutron Status: In Progress => Fix Released -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1504465 Title: neutron_lbaas.tests.tempest.v2.api.test_health_monitors_non_admin.TestHealthMonitors failed to clean up loadbalancer Status in neutron: Fix Released Bug description: http://logs.openstack.org/15/229915/3/gate/gate-neutron-lbaasv2-dsvm- minimal/5dc60be/logs/testr_results.html.gz ft1.2: tearDownClass (neutron_lbaas.tests.tempest.v2.api.test_health_monitors_non_admin.TestHealthMonitors)_StringException: Traceback (most recent call last): File "neutron_lbaas/tests/tempest/lib/test.py", line 310, in tearDownClass six.reraise(etype, value, trace) File "neutron_lbaas/tests/tempest/lib/test.py", line 293, in tearDownClass teardown() File "neutron_lbaas/tests/tempest/v2/api/base.py", line 96, in resource_cleanup cls._try_delete_resource(cls._delete_load_balancer, lb_id) File "neutron_lbaas/tests/tempest/v1/api/base.py", line 185, in _try_delete_resource delete_callable(*args, **kwargs) File "neutron_lbaas/tests/tempest/v2/api/base.py", line 137, in _delete_load_balancer load_balancer_id, delete=True) File "neutron_lbaas/tests/tempest/v2/api/base.py", line 160, in _wait_for_load_balancer_status load_balancer_id) File "neutron_lbaas/tests/tempest/v2/clients/load_balancers_client.py", line 42, in get_load_balancer resp, body = self.get(url) File "/usr/local/lib/python2.7/dist-packages/tempest_lib/common/rest_client.py", line 274, in get return self.request('GET', url, extra_headers, headers) File "/usr/local/lib/python2.7/dist-packages/tempest_lib/common/rest_client.py", line 646, in request resp, resp_body) File "/usr/local/lib/python2.7/dist-packages/tempest_lib/common/rest_client.py", line 760, in _error_checker message=message) tempest_lib.exceptions.ServerFault: Got server fault Details: Request Failed: internal server error while processing your request. Server failure is: 2015-10-08 23:22:56.409 ERROR neutron.api.v2.resource [req-fafd7f88-2e1a-41ce-85c1-9dbacc6f1d93 TestHealthMonitors-867400801 TestHealthMonitors-1196952833] show failed 2015-10-08 23:22:56.409 13383 ERROR neutron.api.v2.resource Traceback (most recent call last): 2015-10-08 23:22:56.409 13383 ERROR neutron.api.v2.resource File "/opt/stack/new/neutron/neutron/api/v2/resource.py", line 83, in resource 2015-10-08 23:22:56.409 13383 ERROR neutron.api.v2.resource result = method(request=request, **args) 2015-10-08 23:22:56.409 13383 ERROR neutron.api.v2.resource File "/opt/stack/new/neutron/neutron/api/v2/base.py", line 359, in show 2015-10-08 23:22:56.409 13383 ERROR neutron.api.v2.resource parent_id=parent_id), 2015-10-08 23:22:56.409 13383 ERROR neutron.api.v2.resource File "/opt/stack/new/neutron/neutron/api/v2/base.py", line 311, in _item 2015-10-08 23:22:56.409 13383 ERROR neutron.api.v2.resource obj = obj_getter(request.context, id, **kwargs) 2015-10-08 23:22:56.409 13383 ERROR neutron.api.v2.resource File "/opt/stack/new/neutron-lbaas/neutron_lbaas/services/loadbalancer/plugin.py", line 560, in get_loadbalancer 2015-10-08 23:22:56.409 13383 ERROR neutron.api.v2.resource return self.db.get_loadbalancer(context, id).to_api_dict() 2015-10-08 23:22:56.409 13383 ERROR neutron.api.v2.resource File "/opt/stack/new/neutron-lbaas/neutron_lbaas/db/loadbalancer/loadbalancer_dbv2.py", line 268, in get_loadbalancer 2015-10-08 23:22:56.409 13383 ERROR neutron.api.v2.resource lb_db = self._get_resource(context, models.LoadBalancer, id) 2015-10-08 23:22:56.409 13383 ERROR neutron.api.v2.resource File "/opt/stack/new/neutron-lbaas/neutron_lbaas/db/loadbalancer/loadbalancer_dbv2.py", line 73, in _get_resource 2015-10-08 23:22:56.409 13383 ERROR neutron.api.v2.resource context.session.refresh(resource) 2015-10-08 23:22:56.409 13383 ERROR neutron.api.v2.resource File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/session.py", line 1344, in refresh 2015-10-08 23:22:56.409 13383 ERROR neutron.api.v2.resource instance_str(instance)) 2015-10-08 23:22:56.409 13383 ERROR neutron.api.v2.resource InvalidRequestError: Could not refresh instance '<LoadBalancer at 0x7fbea46e86d0>' 2015-10-08 23:22:56.409 13383 ERROR neutron.api.v2.resource To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/1504465/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

