← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1221418] Re: creating duplicate users is allowed, MultipleResultsFound exception on auth

 

This is not reproducible against mysql AFAICT, which leads me to believe
this is somehow the fault of sqlite (or the specific version I'm
using).. not in how we're using it (because we're working with mysql in
the same manner).

  $ sqlite3 --version
  3.7.12 2012-04-03 19:43:07 86b8481be7e76cccc92d14ce762d21bfb69504af
  $ pip freeze | grep pysqlite
  pysqlite==2.6.3

** Changed in: keystone
       Status: Triaged => Won't Fix

** Changed in: keystone
    Milestone: havana-rc1 => None

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to Keystone.
https://bugs.launchpad.net/bugs/1221418

Title:
  creating duplicate users is allowed, MultipleResultsFound exception on
  auth

Status in OpenStack Identity (Keystone):
  Won't Fix

Bug description:
  This is running against a default configuration with a sqlite db on
  disk and the UUID token provider.

  I can create duplicate users all day-
  http://paste.openstack.org/raw/45827/

  Attempting to authenticate as any one of those users results in:

  REQ: curl -i -X POST http://localhost:35357/v3/auth/tokens -H "Content-Type: application/json" -H "User-Agent: python-keystoneclient"
  REQ BODY: {"auth": {"identity": {"methods": ["password"], "password": {"user": {"domain": {"id": "default"}, "name": "admin", "password": "secrete"}}}, "scope": {"project": {"domain": {"id": "default"}, "name": "admin"}}}}

  keystone.common.wsgi Traceback (most recent call last):
  keystone.common.wsgi   File "keystone/common/wsgi.py", line 238, in __call__
  keystone.common.wsgi     result = method(context, **params)
  keystone.common.wsgi   File "keystone/auth/controllers.py", line 287, in authenticate_for_token
  keystone.common.wsgi     self.authenticate(context, auth_info, auth_context)
  keystone.common.wsgi   File "keystone/auth/controllers.py", line 344, in authenticate
  keystone.common.wsgi     auth_context)
  keystone.common.wsgi   File "keystone/auth/plugins/password.py", line 103, in authenticate
  keystone.common.wsgi     user_info = UserAuthInfo(auth_payload)
  keystone.common.wsgi   File "keystone/auth/plugins/password.py", line 34, in __init__
  keystone.common.wsgi     self._validate_and_normalize_auth_data(auth_payload)
  keystone.common.wsgi   File "keystone/auth/plugins/password.py", line 85, in _validate_and_normalize_auth_data
  keystone.common.wsgi     user_name, domain_ref['id'])
  keystone.common.wsgi   File "keystone/identity/core.py", line 172, in wrapper
  keystone.common.wsgi     return f(self, *args, **kwargs)
  keystone.common.wsgi   File "keystone/identity/core.py", line 293, in get_user_by_name
  keystone.common.wsgi     ref = driver.get_user_by_name(user_name, domain_id)
  keystone.common.wsgi   File "keystone/identity/backends/sql.py", line 136, in get_user_by_name
  keystone.common.wsgi     user_ref = query.one()
  keystone.common.wsgi   File "os/lib/python2.7/site-packages/sqlalchemy/orm/query.py", line 2193, in one
  keystone.common.wsgi     "Multiple rows were found for one()")
  keystone.common.wsgi MultipleResultsFound: Multiple rows were found for one()

To manage notifications about this bug go to:
https://bugs.launchpad.net/keystone/+bug/1221418/+subscriptions