Modify ↓
Opened 12 years ago
Last modified 12 years ago
#10057 new defect
IntegrityError: (1062, "Duplicate entry 'name' for key 'username'")
Reported by: | czarnymb | Owned by: | Dolf Andringa |
---|---|---|---|
Priority: | normal | Component: | SqlFlexibleAuthStorePlugin |
Severity: | normal | Keywords: | |
Cc: | Trac Release: | 0.12 |
Description
How to Reproduce
While doing a POST operation on /prefs/account
, Trac issued an internal error.
Additional details -- Password Changing in Profile Preferences
Request parameters:
{'__FORM_TOKEN': u'e39d7abe2c3679c7df5e4841', 'action': u'save', 'old_password': u'marek', 'panel_id': u'account', 'password': u'test', 'password_confirm': u'test'}
User agent: Opera/9.80 (Windows NT 5.1; U; pl) Presto/2.10.229 Version/11.64
Python Traceback
Traceback (most recent call last): File "build\bdist.win32\egg\trac\web\main.py", line 522, in _dispatch_request dispatcher.dispatch(req) File "build\bdist.win32\egg\trac\web\main.py", line 243, in dispatch resp = chosen_handler.process_request(req) File "build\bdist.win32\egg\trac\prefs\web_ui.py", line 77, in process_request template, data = chosen_provider.render_preference_panel(req, panel_id) File "build\bdist.win32\egg\acct_mgr\web_ui.py", line 225, in render_preference_panel data = {'account': self._do_account(req), File "build\bdist.win32\egg\acct_mgr\web_ui.py", line 287, in _do_account data.update(self._do_change_password(req)) File "build\bdist.win32\egg\acct_mgr\web_ui.py", line 357, in _do_change_password self.acctmgr.set_password(user, password, old_password) File "build\bdist.win32\egg\acct_mgr\api.py", line 295, in set_password self._notify('password_changed', user, password) File "build\bdist.win32\egg\acct_mgr\api.py", line 456, in _notify getattr(l, func)(*args) File "C:\Program Files\BitNami Trac Stack\python\lib\site-packages\sqlflexibleauthstoreplugin-0.1-py2.6.egg\sqlflexibleauthstore\sqlflexibleauthstore.py", line 299, in user_password_changed return self.set_password(user,password,create_user=True) File "C:\Program Files\BitNami Trac Stack\python\lib\site-packages\sqlflexibleauthstoreplugin-0.1-py2.6.egg\sqlflexibleauthstore\sqlflexibleauthstore.py", line 205, in set_password cursor.execute(query) File "build\bdist.win32\egg\trac\db\util.py", line 66, in execute return self.cursor.execute(sql) File "C:\Program Files\BitNami Trac Stack\python\lib\site-packages\MySQLdb\cursors.py", line 173, in execute self.errorhandler(self, exc, value) File "C:\Program Files\BitNami Trac Stack\python\lib\site-packages\MySQLdb\connections.py", line 36, in defaulterrorhandler raise errorclass, errorvalue IntegrityError: (1062, "Duplicate entry 'name' for key 'username'")
Attachments (0)
Change History (2)
comment:1 follow-up: 2 Changed 12 years ago by
comment:2 Changed 12 years ago by
Replying to czarnymb:
it worked with no errors but... then I can't add new users...
That is a bit surprising. I would expect that only user_created
would be called when a user is created. You are changing code in the method user_password_changed
, which should only be called when a password is changed for an existing user. What error do you see with regard to can't add new users?
Note: See
TracTickets for help on using
tickets.
When i've changed the line 299 in sqlflexibleauthstore.py from
to
it worked with no errors but... then I can't add new users...