Something caused your database to get corrupted (perhaps a system
crash during an operation). The SQLite page has some scenarios at
http://www.sqlite.org/lockingv3.html#how_to_corrupt but I'm not sure
how to recover from it after it's happened.

Using SQLite as a production database isn't really recommended. You'll
have much better success with MySQL or PostgreSQL.

-David



On Wed, Apr 14, 2010 at 2:35 PM, herman0221 <jam...@gmail.com> wrote:
> As the administrator of a simple Reviewboard trial, I just started
> getting spammed from the webserver with emails containing python call
> call stacks. The summary at the bottom of each email is
> "DatabaseError: database disk image is malformed".
>
> What is the best way to recover from this? Up until this afternoon,
> the site was working fine...
>
> I'm not sure if it's helpful at this point, but here is an example of
> one of the emails I received from the server:
>
> -----Original Message-----
> Subject: [Django] Error (EXTERNAL IP): /dashboard/
>
> Traceback (most recent call last):
>
>  File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/
> django/core/handlers/base.py", line 98, in get_response
>    response = middleware_method(request, e)
>
>  File "/usr/local/lib/python2.6/dist-packages/Djblets-0.5.9-py2.6.egg/
> djblets/log/middleware.py", line 220, in process_exception
>    request.user, request.build_absolute_uri(),
>
>  File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/
> django/contrib/auth/middleware.py", line 9, in __get__
>    request._cached_user = get_user(request)
>
>  File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/
> django/contrib/auth/__init__.py", line 84, in get_user
>    user_id = request.session[SESSION_KEY]
>
>  File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/
> django/contrib/sessions/backends/base.py", line 46, in __getitem__
>    return self._session[key]
>
>  File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/
> django/contrib/sessions/backends/base.py", line 172, in _get_session
>    self._session_cache = self.load()
>
>  File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/
> django/contrib/sessions/backends/db.py", line 16, in load
>    expire_date__gt=datetime.datetime.now()
>
>  File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/
> django/db/models/manager.py", line 120, in get
>    return self.get_query_set().get(*args, **kwargs)
>
>  File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/
> django/db/models/query.py", line 300, in get
>    num = len(clone)
>
>  File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/
> django/db/models/query.py", line 81, in __len__
>    self._result_cache = list(self.iterator())
>
>  File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/
> django/db/models/query.py", line 238, in iterator
>    for row in self.query.results_iter():
>
>  File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/
> django/db/models/sql/query.py", line 287, in results_iter
>    for rows in self.execute_sql(MULTI):
>
>  File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/
> django/db/models/sql/query.py", line 2369, in execute_sql
>    cursor.execute(sql, params)
>
>  File "/usr/local/lib/python2.6/dist-packages/Django-1.1.1-py2.6.egg/
> django/db/backends/sqlite3/base.py", line 193, in execute
>    return Database.Cursor.execute(self, query, params)
>
> DatabaseError: database disk image is malformed
>
>
> <ModPythonRequest
> path:/dashboard/,
> GET:<QueryDict: {}>,
> POST:<QueryDict: {}>,
> COOKIES:{'rbsessionid': 'd9fd5611c9c64e4119fb5b2d26ac62e6'},
> META:{'AUTH_TYPE': None,
>  'CONTENT_LENGTH': 0,
>  'CONTENT_TYPE': None,
>  'GATEWAY_INTERFACE': 'CGI/1.1',
>  'HTTP_ACCEPT': 'image/gif, image/jpeg, image/pjpeg, image/pjpeg,
> application/x-shockwave-flash, application/x-silverlight, application/
> x-silverlight-2-b2, application/x-ms-application, application/x-ms-
> xbap, application/vnd.ms-xpsdocument, application/xaml+xml,
> application/vnd.ms-excel, application/vnd.ms-powerpoint, application/
> msword, */*',
>  'HTTP_ACCEPT_ENCODING': 'gzip, deflate',
>  'HTTP_ACCEPT_LANGUAGE': 'en-us',
>  'HTTP_CONNECTION': 'Keep-Alive',
>  'HTTP_COOKIE': 'rbsessionid=d9fd5611c9c64e4119fb5b2d26ac62e6',
>  'HTTP_HOST': 'jamcie:8081',
>  'HTTP_USER_AGENT': 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT
> 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR
> 3.5.30729; InfoPath.2; .NET CLR 1.1.4322; MS-RTC LM 8)',
>  'PATH_INFO': u'/dashboard/',
>  'PATH_TRANSLATED': None,
>  'QUERY_STRING': None,
>  'REMOTE_ADDR': '192.168.150.171',
>  'REMOTE_HOST': None,
>  'REMOTE_IDENT': None,
>  'REMOTE_USER': None,
>  'REQUEST_METHOD': 'GET',
>  'SCRIPT_NAME': '',
>  'SERVER_NAME': 'jamcie-ubuntu',
>  'SERVER_PORT': 80,
>  'SERVER_PROTOCOL': 'HTTP/1.1',
>  'SERVER_SOFTWARE': 'mod_python'}>
>
> Much thanks!
>
> --
> Want to help the Review Board project? Donate today at 
> http://www.reviewboard.org/donate/
> Happy user? Let us know at http://www.reviewboard.org/users/
> -~----------~----~----~----~------~----~------~--~---
> To unsubscribe from this group, send email to 
> reviewboard+unsubscr...@googlegroups.com
> For more options, visit this group at 
> http://groups.google.com/group/reviewboard?hl=en
>
> To unsubscribe, reply using "remove me" as the subject.
>

-- 
Want to help the Review Board project? Donate today at 
http://www.reviewboard.org/donate/
Happy user? Let us know at http://www.reviewboard.org/users/
-~----------~----~----~----~------~----~------~--~---
To unsubscribe from this group, send email to 
reviewboard+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/reviewboard?hl=en

Reply via email to