Modify ↓
Opened 16 years ago
Closed 12 years ago
#5868 closed defect (invalid)
"database is locked" on big repositories
| Reported by: | Owned by: | Emmanuel Blot | |
|---|---|---|---|
| Priority: | normal | Component: | RevtreePlugin |
| Severity: | blocker | Keywords: | |
| Cc: | Trac Release: | 0.11 |
Description
Hi, we are hosting about 300 SVN repositories, each one with its trac environment. We would like to use RevTree, but we're experiencing a "database is locked" problem when querying for big repositories.
The error displayed is:
Traceback (most recent call last):
File "/usr/lib/python2.4/site-packages/trac/web/api.py", line 377, in send_error
'text/html')
File "/usr/lib/python2.4/site-packages/trac/web/chrome.py", line 725, in render_template
req.chrome[type_].append(
File "/usr/lib/python2.4/site-packages/trac/web/api.py", line 195, in __getattr__
value = self.callbacks[name](self)
File "/usr/lib/python2.4/site-packages/trac/util/compat.py", line 135, in newfunc
return func_(*(args + fargs), **dict(kwargs, **fkwargs))
File "/usr/lib/python2.4/site-packages/trac/web/chrome.py", line 489, in prepare_request
for category, name, text in contributor.get_navigation_items(req):
File "/usr/lib/python2.4/site-packages/trac/ticket/query.py", line 748, in get_navigation_items
if 'TICKET_VIEW' in req.perm and \
File "/usr/lib/python2.4/site-packages/trac/perm.py", line 524, in has_permission
return self._has_permission(action, resource)
File "/usr/lib/python2.4/site-packages/trac/perm.py", line 537, in _has_permission
decision = PermissionSystem(self.env). \
File "/usr/lib/python2.4/site-packages/trac/perm.py", line 425, in check_permission
perm)
File "/usr/lib/python2.4/site-packages/trac/perm.py", line 281, in check_permission
permissions = PermissionSystem(self.env). \
File "/usr/lib/python2.4/site-packages/trac/perm.py", line 357, in get_user_permissions
for perm in self.store.get_user_permissions(username):
File "/usr/lib/python2.4/site-packages/trac/perm.py", line 175, in get_user_permissions
cursor.execute("SELECT username,action FROM permission")
File "/usr/lib/python2.4/site-packages/trac/db/util.py", line 60, in execute
return self.cursor.execute(sql)
File "/usr/lib/python2.4/site-packages/trac/db/sqlite_backend.py", line 58, in execute
args or [])
File "/usr/lib/python2.4/site-packages/trac/db/sqlite_backend.py", line 50, in _rollback_on_error
return function(self, *args, **kwargs)
OperationalError: database is locked
Do you know how we can fix it ?
Thanks, giacomo
Attachments (0)
Note: See
TracTickets for help on using
tickets.



The database is locked issue is as old as Trac is. I do not think it is tied to the plugin. Using SQLite is not recommended when user base grows: a DB designed for real concurrent accesses such as PSQL should be used instead.