Edgewall Software
Modify

Opened 13 years ago

Closed 13 years ago

Last modified 13 years ago

#10347 closed defect (duplicate)

OperationalError: database or disk is full

Reported by: michelle.lowe@… Owned by:
Priority: normal Milestone:
Component: general Version: 0.11.6
Severity: normal Keywords:
Cc: Branch:
Release Notes:
API Changes:
Internal Changes:

Description

How to Reproduce

While doing a GET operation on /query, Trac issued an internal error.

Oops… Trac detected an internal error: OperationalError: database or disk is full


Our Account

Account Name: Timmons Description: Account Level: Equity Account Active: Yes - Enabled Disk Usage 528.1 MB (1.76%)

Request parameters:

{'group': u'resolution',
 'milestone': u'Maintenance Window 2',
 'status': u'closed'}

System Information

Trac 0#11#6
Python 2#5#4 #r254:67916, Dec 3 2009, 14:36:49# ##br## #GCC 4#1#2 20080704 #Red Hat 4#1#2-46##
setuptools 0#6c11
SQLite 3#3#6
pysqlite 2#5#6
Genshi 0#5#1
mod_wsgi 3#1 #WSGIProcessGroup WSGIApplicationGroup %{GLOBAL}#
Pygments 1#1#1
Subversion 1#6#6 #r40053#
RPC 1#0#6

Python Traceback

Traceback #most recent call last#:
  File "/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/web/main.py", line 450, in _dispatch_request
    dispatcher.dispatch#req#
  File "/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/web/main.py", line 229, in dispatch
    req.session.save##
  File "/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/web/session.py", line 100, in save
    #self.sid,##
  File "/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/db/util.py", line 64, in execute
    return self.cursor.execute#sql_escape_percent#sql#, args#
  File "/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/db/sqlite_backend.py", line 80, in execute
    PyFormatCursor.execute#self, *args#
  File "/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/db/sqlite_backend.py", line 59, in execute
    args or [])
  File "/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/db/sqlite_backend.py", line 51, in _rollback_on_error
    return function#self, *args, **kwargs#
OperationalError: database or disk is full

Attachments (0)

Change History (3)

comment:1 by Remy Blank, 13 years ago

Resolution: duplicate
Status: newclosed

InstallationIssue and duplicate (search:"database or disk is full?ticket=on").

(And please post logs as plain text, possibly compressed if they are large.)

comment:2 by anonymous, 13 years ago

Attached file → inserted here as plain text….

Oops… Trac detected an internal error: OperationalError: database or disk is full

Our Account

Account Name: Timmons Description: Account Level: Equity Account Active: Yes - Enabled Disk Usage 528.1 MB (1.76%)

Python Traceback Most recent call last:

  • File "/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/web/main.py", line 450, in_dispatch_request

Code fragment:

  1. try:
  2. if not env and env_error:
  3. raise HTTPInternalError(env_error)
  4. try:
  5. dispatcher = RequestDispatcher(env)
  6. dispatcher.dispatch(req)
  7. except RequestDone:
  8. pass
  9. resp = req._response or []
  10. except HTTPException, e:

Local variables: Name Value after [u' except RequestDone:', u' pass', u' resp = … before [u' try:', u' if not env and env_error:', u' raise … dispatcher <trac.web.main.RequestDispatcher object at 0x3d0e5d90> e OperationalError('database or disk is full',) env <trac.env.Environment object at 0x3cf87b10> env_error None exc_info (<class 'pysqlite2.dbapi2.OperationalError'>, OperationalError('database … filename '/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/web/main … frames [{'function': '_dispatch_request', 'lines_before': [u' try:', u' … has_admin True line u' dispatcher.dispatch(req)' lineno 449 message u'OperationalError: database or disk is full' req <Request "GET u'/query'"> resp [] tb <traceback object at 0x3d08ba28> tb_hide None traceback u'Traceback (most recent call last):\n File …

  • File "/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/web/main.py", line 229, indispatch

Code fragment:

  1. req.send(out.getvalue(), 'text/plain')
  2. else:
  3. output = chrome.render_template(req, template,
  4. data, content_type)
  5. # Give the session a chance to persist changes
  6. req.session.save()
  7. req.send(output, content_type or 'text/html')
  8. else:
  9. self._post_process_request(req)
  10. except RequestDone:
  11. raise

Local variables: Name Value chosen_handler <trac.ticket.query.QueryModule object at 0x3d0e5b10> chrome <trac.web.chrome.Chrome object at 0x3d0e5750> content_type None data {'tickets': [{u'status': u'closed', u'changetime': datetime.datetime(2011, … err (<class 'pysqlite2.dbapi2.OperationalError'>, OperationalError('database … handler <trac.ticket.query.QueryModule object at 0x3d0e5b10> output '<!DOCTYPE html PUBLIC "-W3CDTD XHTML 1.0 StrictEN" … req <Request "GET u'/query'"> resp ('query.html', {'tickets': [{u'status': u'closed', u'changetime': … self <trac.web.main.RequestDispatcher object at 0x3d0e5d90> template 'query.html'

  • File "/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/web/session.py", line 100, insave

Code fragment:

  1. self.env.log.warning('Session %s already exists: %s' %
  2. (self.sid, e))
  3. if self._old != self:
  4. attrs = [(self.sid, authenticated, k, v) for k, v in self.items()]
  5. cursor.execute("DELETE FROM session_attribute WHERE sid=%s",
  6. (self.sid,))
  7. self._old = dict(self.items())
  8. if attrs:
  9. # The session variables might already have been updated by a
  10. # concurrent request.
  11. try:

Local variables: Name Value attrs [('michelle.lowe@…', 1, u'query_time', u'1315519058'), … authenticated 1 cursor <trac.db.util.IterableCursor object at 0x3d231ad0> db <trac.db.pool.PooledConnection object at 0x3d239f00> k u'email' now 1315519059 self {u'query_time': u'1315519058', u'tz': u'US/Eastern', u'name': u'Michelle … v u'michelle.lowe@…'

  • File "/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/db/util.py", line 64, inexecute

Code fragment:

  1. return r
  2. except Exception, e:
  3. self.log.debug('execute exception: %r', e)
  4. raise
  5. if args:
  6. return self.cursor.execute(sql_escape_percent(sql), args)
  7. return self.cursor.execute(sql)
  8. def executemany(self, sql, args=None):
  9. if self.log:
  10. self.log.debug('SQL: %r', sql)

Local variables: Name Value args ('michelle.lowe@…',) self <trac.db.util.IterableCursor object at 0x3d231ad0> sql 'DELETE FROM session_attribute WHERE sid=%s'

  • File "/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/db/sqlite_backend.py", line 80, inexecute

Code fragment:

  1. PyFormatCursor.init(self, con)
  2. self.rows = []
  3. self.pos = 0
  4. def execute(self, *args):
  5. PyFormatCursor.execute(self, *args)
  6. self.rows = PyFormatCursor.fetchall(self)
  7. self.pos = 0
  8. def fetchone(self):
  9. try:

Local variables: Name Value args ('DELETE FROM session_attribute WHERE sid=%s', … self <trac.db.sqlite_backend.EagerCursor object at 0x3c339c30>

  • File "/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/db/sqlite_backend.py", line 59, inexecute

Code fragment:

  1. raise
  2. def execute(self, sql, args=None):
  3. if args:
  4. sql = sql % (('?',) * len(args))
  5. return self._rollback_on_error(sqlite.Cursor.execute, sql,
  6. args or [])
  7. def executemany(self, sql, args=None):
  8. if args:
  9. sql = sql % (('?',) * len(args[0]))
  10. return self._rollback_on_error(sqlite.Cursor.executemany, sql,
  11. args or [])

Local variables: Name Value args ('michelle.lowe@…',) self <trac.db.sqlite_backend.EagerCursor object at 0x3c339c30> sql 'DELETE FROM session_attribute WHERE sid=?'

  • File "/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/db/sqlite_backend.py", line 51, in_rollback_on_error

Code fragment:

  1. sqlite_version_string = '%d.%d.%d' % (_ver[0], _ver[1], int(_ver[2]))
  2. class PyFormatCursor(sqlite.Cursor):
  3. def _rollback_on_error(self, function, *args, kwargs):
  4. try:
  5. return function(self, *args, kwargs)
  6. except sqlite.DatabaseError, e:
  7. self.cnx.rollback()
  8. raise
  9. def execute(self, sql, args=None):
  10. if args:

Local variables: Name Value args ('DELETE FROM session_attribute WHERE sid=?', … e OperationalError('database or disk is full',) function <method 'execute' of 'pysqlite2.dbapi2.Cursor' objects> kwargs {} self <trac.db.sqlite_backend.EagerCursor object at 0x3c339c30> File "/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/web/main.py", line 450, in _dispatch_request

dispatcher.dispatch(req)

File "/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/web/main.py", line 229, in dispatch

req.session.save()

File "/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/web/session.py", line 100, in save

(self.sid,))

File "/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/db/util.py", line 64, in execute

return self.cursor.execute(sql_escape_percent(sql), args)

File "/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/db/sqlite_backend.py", line 80, in execute

PyFormatCursor.execute(self, *args)

File "/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/db/sqlite_backend.py", line 59, in execute

args or [])

File "/usr/local/lib/python2.5/site-packages/Trac-0.11.6-py2.5.egg/trac/db/sqlite_backend.py", line 51, in _rollback_on_error

return function(self, *args, kwargs)

System Information: Trac: 0.11.6 Python: 2.5.4 (r254:67916, Dec 3 2009, 14:36:49) [GCC 4.1.2 20080704 (Red Hat 4.1.2-46)] setuptools: 0.6c11 SQLite: 3.3.6 pysqlite: 2.5.6 Genshi: 0.5.1 mod_wsgi: 3.1 (WSGIProcessGroup WSGIApplicationGroup %{GLOBAL}) Pygments: 1.1.1 Subversion: 1.6.6 (r40053) RPC: 1.0.6

comment:3 by Christian Boos, 13 years ago

Please contact your local Trac Administrator.

The problem is that the "database or disk is full" in your local installation and we unfortunately can't do anything for that… though maybe in one future version of Trac, we could implement a disk vacuum feature triggered by a GET /more-disk-space-please request ;-)

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The ticket will remain with no owner.
The resolution will be deleted. Next status will be 'reopened'.
to The owner will be changed from (none) to the specified user.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.