Comment 19 for bug 959294

Revision history for this message
David Kranz (david-kranz) wrote : Re: Can't delete users

We just saw this running a new tempest keystone test submitted as https://review.openstack.org/#/c/7231/

(keystone.policy.backends.rules): 2012-05-10 11:06:00,254 DEBUG enforce admin_required: {'tenant_id': u'758e5226e8a542c385ad447383f51b44', 'user_id': u'533cb3d7ca7f4f36ab6bbc4547b445c5', u'roles': [u'admin']}
(root): 2012-05-10 11:06:00,299 ERROR (IntegrityError) (1451, 'Cannot delete or update a parent row: a foreign key constraint fails (`keystone`.`user_tenant_membership`, CONSTRAINT `user_tenant_membership_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `user` (`id`))') 'DELETE FROM user WHERE user.id = %s' ('50c9e4fd7af947a2895d8c1bcb17d51c',)
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/keystone/common/wsgi.py", line 184, in __call__
    result = method(context, **params)
  File "/usr/lib/python2.7/dist-packages/keystone/identity/core.py", line 415, in delete_user
    self.identity_api.delete_user(context, user_id)
  File "/usr/lib/python2.7/dist-packages/keystone/common/manager.py", line 48, in _wrapper
    return f(*args, **kw)
  File "/usr/lib/python2.7/dist-packages/keystone/identity/backends/sql.py", line 340, in delete_user
    session.flush()
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/orm/session.py", line 1547, in flush
    self._flush(objects)
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/orm/session.py", line 1616, in _flush
    flush_context.execute()
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/orm/unitofwork.py", line 328, in execute
    rec.execute(self)
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/orm/unitofwork.py", line 495, in execute
    uow
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/orm/mapper.py", line 2499, in _delete_obj
    c = connection.execute(statement, del_objects)
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1405, in execute
    params)
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1538, in _execute_clauseelement
    compiled_sql, distilled_params
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1646, in _execute_context
    context)
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1639, in _execute_context
    context)
  File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/default.py", line 330, in do_execute
    cursor.execute(statement, parameters)
  File "/usr/lib/python2.7/dist-packages/MySQLdb/cursors.py", line 174, in execute
    self.errorhandler(self, exc, value)
  File "/usr/lib/python2.7/dist-packages/MySQLdb/connections.py", line 36, in defaulterrorhandler
    raise errorclass, errorvalue
IntegrityError: (IntegrityError) (1451, 'Cannot delete or update a parent row: a foreign key constraint fails (`keystone`.`user_tenant_membership`, CONSTRAINT `user_tenant_membership_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `user` (`id`))') 'DELETE FROM user WHERE user.id = %s' ('50c9e4fd7af947a2895d8c1bcb17d51c',)
(eventlet.wsgi.server): 2012-05-10 11:06:00,300 DEBUG 172.17.1.170 - - [10/May/2012 11:06:00] "DELETE /v2.0/users/50c9e4fd7af947a2895d8c1bcb17d51c HTTP/1.1" 500 613 0.053749