Description of problem: Can't delete group which is mentioned in an access policy. It could be regress in 0.15 Version-Release number of selected component (if applicable): 0.16.1 How reproducible: 100% Steps to Reproduce: 1.Create a group 2.Configure access policy on one system with this group 3.On group page, delete this group Actual results: ISE 500 Expected results: This group can be deleted, and access policy configured with this group is deleted too. Additional info: Apr 9 07:19:30 beaker-devel beaker-server[7982]: bkr.server ERROR Exception on /groups/remove [POST] Apr 9 07:19:30 beaker-devel beaker-server[7982]: Traceback (most recent call last): Apr 9 07:19:30 beaker-devel beaker-server[7982]: File "/usr/lib/python2.6/site-packages/flask/app.py", line 1817, in wsgi_app Apr 9 07:19:30 beaker-devel beaker-server[7982]: response = self.full_dispatch_request() Apr 9 07:19:30 beaker-devel beaker-server[7982]: File "/usr/lib/python2.6/site-packages/flask/app.py", line 1479, in full_dispatch_request Apr 9 07:19:30 beaker-devel beaker-server[7982]: response = self.process_response(response) Apr 9 07:19:30 beaker-devel beaker-server[7982]: File "/usr/lib/python2.6/site-packages/flask/app.py", line 1691, in process_response Apr 9 07:19:30 beaker-devel beaker-server[7982]: response = handler(response) Apr 9 07:19:30 beaker-devel beaker-server[7982]: File "/usr/lib/python2.6/site-packages/bkr/server/wsgi.py", line 106, in commit_or_rollback_session Apr 9 07:19:30 beaker-devel beaker-server[7982]: session.commit() Apr 9 07:19:30 beaker-devel beaker-server[7982]: File "/usr/lib64/python2.6/site-packages/sqlalchemy/orm/scoping.py", line 139, in do Apr 9 07:19:30 beaker-devel beaker-server[7982]: return getattr(self.registry(), name)(*args, **kwargs) Apr 9 07:19:30 beaker-devel beaker-server[7982]: File "/usr/lib64/python2.6/site-packages/sqlalchemy/orm/session.py", line 614, in commit Apr 9 07:19:30 beaker-devel beaker-server[7982]: self.transaction.commit() Apr 9 07:19:30 beaker-devel beaker-server[7982]: File "/usr/lib64/python2.6/site-packages/sqlalchemy/orm/session.py", line 385, in commit Apr 9 07:19:30 beaker-devel beaker-server[7982]: self._prepare_impl() Apr 9 07:19:30 beaker-devel beaker-server[7982]: File "/usr/lib64/python2.6/site-packages/sqlalchemy/orm/session.py", line 369, in _prepare_impl Apr 9 07:19:30 beaker-devel beaker-server[7982]: self.session.flush() Apr 9 07:19:30 beaker-devel beaker-server[7982]: File "/usr/lib64/python2.6/site-packages/sqlalchemy/orm/session.py", line 1400, in flush Apr 9 07:19:30 beaker-devel beaker-server[7982]: self._flush(objects) Apr 9 07:19:30 beaker-devel beaker-server[7982]: File "/usr/lib64/python2.6/site-packages/sqlalchemy/orm/session.py", line 1481, in _flush Apr 9 07:19:30 beaker-devel beaker-server[7982]: flush_context.execute() Apr 9 07:19:30 beaker-devel beaker-server[7982]: File "/usr/lib64/python2.6/site-packages/sqlalchemy/orm/unitofwork.py", line 302, in execute Apr 9 07:19:30 beaker-devel beaker-server[7982]: rec.execute(self) Apr 9 07:19:30 beaker-devel beaker-server[7982]: File "/usr/lib64/python2.6/site-packages/sqlalchemy/orm/unitofwork.py", line 469, in execute Apr 9 07:19:30 beaker-devel beaker-server[7982]: uow Apr 9 07:19:30 beaker-devel beaker-server[7982]: File "/usr/lib64/python2.6/site-packages/sqlalchemy/orm/mapper.py", line 2092, in _delete_obj Apr 9 07:19:30 beaker-devel beaker-server[7982]: c = connection.execute(statement, del_objects) Apr 9 07:19:30 beaker-devel beaker-server[7982]: File "/usr/lib64/python2.6/site-packages/sqlalchemy/engine/base.py", line 1191, in execute Apr 9 07:19:30 beaker-devel beaker-server[7982]: params) Apr 9 07:19:30 beaker-devel beaker-server[7982]: File "/usr/lib64/python2.6/site-packages/sqlalchemy/engine/base.py", line 1271, in _execute_clauseelement Apr 9 07:19:30 beaker-devel beaker-server[7982]: return self.__execute_context(context) Apr 9 07:19:30 beaker-devel beaker-server[7982]: File "/usr/lib64/python2.6/site-packages/sqlalchemy/engine/base.py", line 1302, in __execute_context Apr 9 07:19:30 beaker-devel beaker-server[7982]: context.parameters[0], context=context) Apr 9 07:19:30 beaker-devel beaker-server[7982]: File "/usr/lib64/python2.6/site-packages/sqlalchemy/engine/base.py", line 1401, in _cursor_execute Apr 9 07:19:30 beaker-devel beaker-server[7982]: context) Apr 9 07:19:30 beaker-devel beaker-server[7982]: File "/usr/lib64/python2.6/site-packages/sqlalchemy/engine/base.py", line 1394, in _cursor_execute Apr 9 07:19:30 beaker-devel beaker-server[7982]: context) Apr 9 07:19:30 beaker-devel beaker-server[7982]: File "/usr/lib64/python2.6/site-packages/sqlalchemy/engine/default.py", line 299, in do_execute Apr 9 07:19:30 beaker-devel beaker-server[7982]: cursor.execute(statement, parameters) Apr 9 07:19:30 beaker-devel beaker-server[7982]: File "/usr/lib64/python2.6/site-packages/MySQLdb/cursors.py", line 173, in execute Apr 9 07:19:30 beaker-devel beaker-server[7982]: self.errorhandler(self, exc, value) Apr 9 07:19:30 beaker-devel beaker-server[7982]: File "/usr/lib64/python2.6/site-packages/MySQLdb/connections.py", line 36, in defaulterrorhandler Apr 9 07:19:30 beaker-devel beaker-server[7982]: raise errorclass, errorvalue Apr 9 07:19:30 beaker-devel beaker-server[7982]: IntegrityError: (IntegrityError) (1451, 'Cannot delete or update a parent row: a foreign key constraint fails (`beaker_devel`.`system_access_policy_rule`, CONSTRAINT `system_access_policy_rule_group_id_fk` FOREIGN KEY (`group_id`) REFERENCES `tg_group` (`group_id`))') 'DELETE FROM tg_group WHERE tg_group.group_id = %s' (166L,)
http://gerrit.beaker-project.org/#/c/3013/
Moving this to 0.16.3: http://gerrit.beaker-project.org/#/c/3041/
This bug fix has been applied to the release-0.16 branch, however we have elected not to do another maintenance release of the 0.16.x series. This fix will be included in 0.17.0 instead.
Beaker 0.17.0 has been released.