Failed to delete vpnaas ipsec-site-connections with 502 error, ORM session: SQL execution without transaction in progress
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
neutron |
Fix Released
|
High
|
Unassigned |
Bug Description
This was triggered in gate here: https:/
The test traceback:
ft1.1: tearDownClass (neutron_
File "/opt/stack/
raise value.with_
File "/opt/stack/
teardown()
File "/opt/stack/
cls.
File "/opt/stack/
delete_
File "/opt/stack/
resp, body = self.delete(uri)
File "/opt/stack/
return self.request(
File "/opt/stack/
self.
File "/opt/stack/
raise exceptions.
tempest.
Details: 502
The request is:
2024-09-09 16:55:44.459 89493 INFO tempest.
2024-09-09 16:55:44.460 89493 DEBUG tempest.
Body: None
Response - Headers: {'date': 'Mon, 09 Sep 2024 16:50:44 GMT', 'server': 'Apache/2.4.52 (Ubuntu)', 'content-length': '420', 'connection': 'close', 'content-type': 'text/html; charset=
Body: b'<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"
neutron log is filled with these for the duration of the (eventually failed) request - 5mins:
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: WARNING neutron.
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: return app(environ, start_response)
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: resp = self.call_func(req, *args, **kw)
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: return self.func(req, *args, **kwargs)
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: response = req.get_
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: status, headers, app_iter = self.call_
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: app_iter = application(
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: resp = self.call_func(req, *args, **kw)
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: return self.func(req, *args, **kwargs)
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: response = req.get_
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: status, headers, app_iter = self.call_
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: app_iter = application(
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: resp = self.call_func(req, *args, **kw)
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: return self.func(req, *args, **kwargs)
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: response = req.get_
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: status, headers, app_iter = self.call_
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: app_iter = application(
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: resp = self.call_func(req, *args, **kw)
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: return self.func(req, *args, **kwargs)
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: response = req.get_
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: status, headers, app_iter = self.call_
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: app_iter = application(
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: resp = self.call_func(req, *args, **kw)
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: return self.func(req, *args, **kwargs)
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: return request.
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: status, headers, app_iter = self.call_
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: app_iter = application(
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: resp = self.call_func(req, *args, **kw)
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: return self.func(req, *args, **kwargs)
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: response = req.get_
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: status, headers, app_iter = self.call_
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: app_iter = application(
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: return resp(environ, start_response)
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: return resp(environ, start_response)
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: response = self.app(environ, start_response)
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: return resp(environ, start_response)
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: resp = self.call_func(req, *args, **kw)
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: return self.func(req, *args, **kwargs)
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: result = method(
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: return self._delete(
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.375166 np0038439257 <email address hidden>[60639]: return f(*args, **kwargs)
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: return f(*args, **kwargs)
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: return f(*dup_args, **dup_kwargs)
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: obj = self._item(request, id, parent_
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: obj = obj_getter(
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: ipsec_site_conn_db = self._get_
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: return self._get_resource(
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: r = model_query.
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: return query.filter(
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: return self._iter().one() # type: ignore
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: result: Union[ScalarRes
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: return self._execute_
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: File "/opt/stack/
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]: fn_result: Optional[
Sep 09 16:50:44.381363 np0038439257 <email address hidden>[60639]:
Sep 09 16:50:54.387442 np0038439257 <email address hidden>[60639]: DEBUG dbcounter [-] [60639] Writing DB stats neutron:
Sep 09 16:51:27.918858 np0038439257 <email address hidden>[60639]: DEBUG dbcounter [-] [60639] Writing DB stats neutron:SELECT=25 {{(pid=60639) stat_writer /opt/stack/
Sep 09 16:51:34.397983 np0038439257 <email address hidden>[60639]: DEBUG neutron_lib.db.api [None req-a3a367f8-
Sep 09 16:51:34.397983 np0038439257 <email address hidden>[60639]: [SQL: DELETE FROM ipsec_site_
Sep 09 16:51:34.397983 np0038439257 <email address hidden>[60639]: [parameters: {'id': 'f5ce2f15-
Sep 09 16:51:34.397983 np0038439257 <email address hidden>[60639]: (Background on this error at: https:/
Sep 09 16:51:34.398761 np0038439257 <email address hidden>[60639]: DEBUG oslo_db.api [None req-a3a367f8-
Looks like a programming error somewhere in re: transaction handling for sqlalchemy.
tags: | added: gate-failure vpnaas |
tags: | added: db |
Changed in neutron: | |
status: | New → Fix Released |
Hi Bodo - I subscribed you to get some eyes on this from someone more familiar with the vpnaas code - let me know if there is someone else better suited to looking.
Thanks -Brian