Indeed the database malformat is caused by my hot-copy. I stopped apache and
copy the db file. The message is gone.
However I met another issue when try to use mysql:
1, I upgrade the sqlite db in the new db site;
2, I imported the upgraded db into mysql; (modified a lot of syntax in the
sqlite dump to match the mysql syntax)
3 changed reviewboard settings to point to mysql ;
4, the page is fine, but when I click a review request/admin page: an
call-stack is shown :

Any clues?
*
*
*Traceback:*
*File
"/usr/ali/lib/python2.5/site-packages/Django-1.2.1-py2.5.egg/django/core/handlers/base.py"
in get_response*
*  100.                     response = callback(request, *callback_args,
**callback_kwargs)*
*File
"/usr/ali/lib/python2.5/site-packages/Django-1.2.1-py2.5.egg/django/contrib/admin/views/decorators.py"
in _checklogin*
*  33.             return view_func(request, *args, **kwargs)*
*File
"/usr/ali/lib/python2.5/site-packages/ReviewBoard-1.0.9-py2.5.egg/reviewboard/admin/views.py"
in site_settings*
*  54.         'root_path': settings.SITE_ROOT + "admin/db/"*
*File
"/usr/ali/lib/python2.5/site-packages/Django-1.2.1-py2.5.egg/django/contrib/admin/views/decorators.py"
in _checklogin*
*  33.             return view_func(request, *args, **kwargs)*
*File
"/usr/ali/lib/python2.5/site-packages/Djblets-0.6.3-py2.5.egg/djblets/siteconfig/views.py"
in site_settings*
*  41.     siteconfig = SiteConfiguration.objects.get_current()*
*File
"/usr/ali/lib/python2.5/site-packages/Djblets-0.6.3-py2.5.egg/djblets/siteconfig/managers.py"
in get_current*
*  51.                 SiteConfiguration.objects.get(site=site)*
*File
"/usr/ali/lib/python2.5/site-packages/Django-1.2.1-py2.5.egg/django/db/models/manager.py"
in get*
*  132.         return self.get_query_set().get(*args, **kwargs)*
*File
"/usr/ali/lib/python2.5/site-packages/Django-1.2.1-py2.5.egg/django/db/models/query.py"
in get*
*  336.         num = len(clone)*
*File
"/usr/ali/lib/python2.5/site-packages/Django-1.2.1-py2.5.egg/django/db/models/query.py"
in __len__*
*  81.                 self._result_cache = list(self.iterator())*
*File
"/usr/ali/lib/python2.5/site-packages/Django-1.2.1-py2.5.egg/django/db/models/query.py"
in iterator*
*  282.                     obj =
self.model(*row[index_start:aggregate_start])*
*File
"/usr/ali/lib/python2.5/site-packages/Djblets-0.6.3-py2.5.egg/djblets/siteconfig/models.py"
in __init__*
*  52.         models.Model.__init__(self, *args, **kwargs)*
*File
"/usr/ali/lib/python2.5/site-packages/Django-1.2.1-py2.5.egg/django/db/models/base.py"
in __init__*
*  341.         signals.post_init.send(sender=self.__class__, instance=self)
*
*File
"/usr/ali/lib/python2.5/site-packages/Django-1.2.1-py2.5.egg/django/dispatch/dispatcher.py"
in send*
*  162.             response = receiver(signal=self, sender=sender, **named)
*
*File
"/usr/ali/lib/python2.5/site-packages/Djblets-0.6.3-py2.5.egg/djblets/util/fields.py"
in post_init*
*  174.             value = self.loads(value)*
*File
"/usr/ali/lib/python2.5/site-packages/Djblets-0.6.3-py2.5.egg/djblets/util/fields.py"
in loads*
*  206.             # string. We have to eval it.*
*
*
*Exception Type: SyntaxError at /ReviewBoard/admin/settings/general/*
*Exception Value: invalid syntax (<string>, line 1)*

I looked into the value of val variable , it's like this:
*
*
*
{`mail_host_password`: ``, `cache_backend`: `file:///tmp/reviewboard_cache`,
`site_upload_temp_dir`: null, `locale_datetime_format`: `N j, Y, P`,
`auth_ldap_tls`: false, `mail_host_user`: ``, `auth_ad_use_tls`: false,
`locale_year_month_format`: `F Y`, `auth_ldap_uid_mask`: ``,
`mail_server_address`: `r...@localhost`, `auth_ldap_uri`: ``,
`auth_ldap_anon_bind_uid`: ``, `diffviewer_context_num_lines`: 5,
`diffviewer_paginate_orphans`: 10, `mail_send_review_mail`: true,
`diffviewer_syntax_highlighting_threshold`: 0, `site_media_root`:
`/var/www/ReviewBoard/htdocs/media`, `locale_language_code`: `en-us`,
`auth_nis_email_domain`: ``, `logging_allow_profiling`: false,
`auth_ldap_anon_bind_passwd`: ``, `cache_expiration_time`: 2592000,
`site_prepend_www`: false, `locale_time_zone`: `US/Pacific`,
`search_index_file`: ``, `auth_ldap_base_dn`: ``, `mail_port`: 25,
`logging_directory`: null, `search_enable`: false, `locale_time_format`:
`P`, `locale_date_format`: `N j, Y`, `auth_ldap_email_domain`: ``,
`locale_month_day_format`: `F j`, `auth_ldap_email_attribute`: ``,
`auth_custom_backends`: [``], `diffviewer_syntax_highlighting`: true,
`auth_ad_ou_name`: ``, `auth_ad_find_dc_from_dns`: false,
`site_admin_email`: `feng....@alibaba-inc.com`, `auth_backend`: `builtin`,
`locale_timezone`: `US/Pacific`, `auth_ad_domain_controller`: ``,
`site_domain_method`: `http`, `mail_use_tls`: false,
`diffviewer_paginate_by`: 20, `logging_enabled`: false,
`diffviewer_show_trailing_whitespace`: false, `auth_require_sitewide_login`:
true, `site_upload_max_memory_size`: 2621440, `locale_default_charset`:
`utf-8`, `auth_ad_domain_name`: ``, `auth_ad_recursion_depth`: null,
`mail_host`: `smtp.ops.aliyun-inc.com`, `diffviewer_include_space_patterns`:
[``], `mail_default_from`: `webmas...@localhost`, `site_media_url`:
`/ReviewBoard/media/`, `site_admin_name`: `feng.cao`, `auth_ad_group_name`:
``}

*


Thanks!
Yanchao WANG


On Fri, Aug 27, 2010 at 10:32 AM, WANG Yanchao <yanchaow...@gmail.com>wrote:

> Thank you Christian for such timely help!!!
>
> As you advised, I first checked the django-evolution version
> it's django_evolution-0.5-py2.5.egg Is it new enough?
> I will now also try to copy the database with the DB closed to see if it
> works.
> If it works, I will try to import the data from sqlite into mysql.
>
>
> Thanks!
> Yanchao WANG
>
> On Thu, Aug 26, 2010 at 5:53 PM, Christian Hammond <chip...@chipx86.com>wrote:
>
>> Hi,
>>
>> First of all, can you see what version of django_evolution is installed on
>> your system? I want to verify that it's new enough.
>>
>> You can ignore the warnings about things not being called with a database
>> connection. That's just due to not using the new APIs in Django 1.2, but
>> it's harmless for Review Board.
>>
>> Second, that "database disk image is malformed" is coming from sqlite, and
>> it indicates that perhaps the database is corrupt or in some bad state. A
>> quick Google search shows some people who have hit this (not with Review
>> Board) and from what I can tell the database wasn't closed properly due to
>> application crashes.
>>
>> This may be an interesting read:
>> http://www.sqlite.org/lockingv3.html#how_to_corrupt
>>
>> When you copied over the database file, was the Review Board server on
>> that system still running? If so, it may be worth shutting down Apache,
>> copying over the database, and then starting it back up again.
>>
>> I would recommend not using sqlite for Review Board. It doesn't handle
>> concurrency very well, meaning you can hit locking problems with several
>> users using it at once. It's best to use MySQL or PostgreSQL.
>>
>> Christian
>>
>> --
>> Christian Hammond - chip...@chipx86.com
>> Review Board - http://www.reviewboard.org
>> VMware, Inc. - http://www.vmware.com
>>
>>
>> On Thu, Aug 26, 2010 at 2:42 AM, WANG Yanchao <yanchaow...@gmail.com>wrote:
>>
>>> I upgrade my reviewboard installation from beta to 1.0.9.
>>> I installed a new 1.0.9 reviewboard and make sure it's working on the new
>>> server. and I copy the old db file to the new db (sqlite)
>>> After installation, it tell me there is some missing column in the db so
>>> I run "rb-site upgrade Path" to upgrade the db scheme.
>>>
>>> but I get the following error messages:
>>> There are unapplied evolutions for diffviewer.
>>> There are unapplied evolutions for reviews.
>>> Project signature has changed - an evolution is required
>>> No fixtures found.
>>> /usr/ali/lib/python2.5/site-packages/Django-1.2.1-py2.5.egg/django/db/models/fields/subclassing.py:26:
>>> PendingDeprecationWarning: inner has been called without providing a
>>> connection argument.
>>>   stacklevel=1)
>>> /usr/ali/lib/python2.5/site-packages/Django-1.2.1-py2.5.egg/django/db/models/fields/subclassing.py:26:
>>> PendingDeprecationWarning: db_type has been called without providing a
>>> connection argument.
>>>   stacklevel=1)
>>> Evolution could not be simulated, possibly due to raw SQL mutations
>>>
>>> Error applying evolution: database disk image is malformed
>>>
>>> Could anyone give me some clue how to deal with this?
>>>
>>> Thanks!
>>> -Yanchao
>>>
>>> --
>>> 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<reviewboard%2bunsubscr...@googlegroups.com>
>>> For more options, visit this group at
>>> http://groups.google.com/group/reviewboard?hl=en
>>
>>
>>  --
>> 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<reviewboard%2bunsubscr...@googlegroups.com>
>> For more options, visit this group at
>> http://groups.google.com/group/reviewboard?hl=en
>
>
>

-- 
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