Opened 17 years ago
Last modified 12 years ago
#6348 closed defect
Duplicate permission causes traceback — at Initial Version
Reported by: | Jeroen Ruigrok van der Werven | Owned by: | Christopher Lenz |
---|---|---|---|
Priority: | high | Milestone: | 1.0 |
Component: | database backend | Version: | devel |
Severity: | major | Keywords: | db integrityerror needmajor |
Cc: | felix.schwarz@… | Branch: | |
Release Notes: | |||
API Changes: | |||
Internal Changes: |
Description
When you, within trac-admin, add a permission to a user that already has that permission you will receive a Python traceback.
Trac [/usr/local/trac-rangaku]> permission list User Action ------------------------------- asmodai MILESTONE_ADMIN asmodai PERMISSION_ADMIN asmodai TICKET_ADMIN asmodai TRAC_ADMIN
Trac [/usr/local/trac-rangaku]> permission add asmodai MILESTONE_ADMIN Traceback (most recent call last): File "/usr/local/bin/trac-admin", line 8, in <module> load_entry_point('Trac==0.11dev-r6153', 'console_scripts', 'trac-admin')() File "/usr/local/lib/python2.5/site-packages/Trac-0.11dev_r6153-py2.5.egg/trac/admin/console.py", line 1190, in run admin.run() File "/usr/local/lib/python2.5/site-packages/Trac-0.11dev_r6153-py2.5.egg/trac/admin/console.py", line 119, in run self.cmdloop() File "/usr/local/lib/python2.5/cmd.py", line 142, in cmdloop stop = self.onecmd(line) File "/usr/local/lib/python2.5/site-packages/Trac-0.11dev_r6153-py2.5.egg/trac/admin/console.py", line 102, in onecmd rv = cmd.Cmd.onecmd(self, line) or 0 File "/usr/local/lib/python2.5/cmd.py", line 219, in onecmd return func(arg) File "/usr/local/lib/python2.5/site-packages/Trac-0.11dev_r6153-py2.5.egg/trac/admin/console.py", line 393, in do_permission self._do_permission_add(user, action) File "/usr/local/lib/python2.5/site-packages/Trac-0.11dev_r6153-py2.5.egg/trac/admin/console.py", line 429, in _do_permission_add self._permsys.grant_permission(user, action) File "/usr/local/lib/python2.5/site-packages/Trac-0.11dev_r6153-py2.5.egg/trac/perm.py", line 274, in grant_permission self.store.grant_permission(username, action) File "/usr/local/lib/python2.5/site-packages/Trac-0.11dev_r6153-py2.5.egg/trac/perm.py", line 204, in grant_permission (username, action)) File "/usr/local/lib/python2.5/site-packages/Trac-0.11dev_r6153-py2.5.egg/trac/db/util.py", line 50, in execute return self.cursor.execute(sql_escape_percent(sql), args) File "/usr/local/lib/python2.5/site-packages/Trac-0.11dev_r6153-py2.5.egg/trac/db/sqlite_backend.py", line 58, in execute args or []) File "/usr/local/lib/python2.5/site-packages/Trac-0.11dev_r6153-py2.5.egg/trac/db/sqlite_backend.py", line 50, in _rollback_on_error return function(self, *args, **kwargs) pysqlite2.dbapi2.OperationalError: SQL logic error or missing database
Please note that the database does exist and initial permission assignments work as intended.
Note:
See TracTickets
for help on using tickets.