Hello

First I have to say that the new reviewboard installer (rb-site install) 
assistant is GREAT. No config file to edit, each setting is explained, I 
like this very much !

Now here's my problem :

I installed version 1.7.2 of reviewboard (ReviewBoard.noarch 
0:1.7.2-1.fc18) on fedora 18.

I would like to migrate data from my old reviewboard 1.6.13 site to my new 
environnement.

When a run rb-site upgrade to update the database, it gives an error "The 
model auth.Message has been deleted [...] Your models contain changes that 
Django Evolution cannot resolve automatically"

Not enough to make me give up... I run rb-site manage evolve with "--hint" 
options which give me a nice "Trial evolution successful".

But It fails on the next step

> rb-site manage /path/to/rbsite -- --hint --execute
   [...]
   Error: Error applying evolution: (1101, "BLOB/TEXT column 'diff_base64' 
can't have a default value")

See console log in attachment 

my config is :
fedora 18 x64
ReviewBoard 1.7.2 (1.7.2-1.fc18)
python 2.7.3
python-django 1.4.3
python-django-evolution 0.6.7
python-djblets 0.7.8
MySQL-python 1.2.3
MySQL Community Server 5.5.29 (running on Windows)

regards,
Chris

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


[root@localhost reviewboard]# rb-site upgrade /var/www/reviews.example.info
Rebuilding directory structure
Updating database. This may take a while.

The log output below, including warnings and errors,
can be ignored unless upgrade fails.

------------------ <begin log output> ------------------
Creating tables ...
Creating table extensions_registeredextension
Creating table diffviewer_filediffdata
Upgrading Review Board from 1.6.13 to 1.7.2
There are unapplied evolutions for accounts.
There are unapplied evolutions for diffviewer.
There are unapplied evolutions for reviews.
Adding baseline version for new models
Project signature has changed - an evolution is required
Installing custom SQL ...
Installing indexes ...
Installed 0 object(s) from 0 fixture(s)
The stored evolutions do not completely resolve all model changes.
Run `./manage.py evolve --hint` to see a suggestion for the changes required.

The following are the changes that could not be resolved:
The model auth.Message has been deleted
Error: Your models contain changes that Django Evolution cannot resolve 
automatically.


[root@localhost reviewboard]# rb-site manage /var/www/reviews.example.info/ 
evolve -- --hint
#----- Evolution for auth
from django_evolution.mutations import DeleteModel


MUTATIONS = [
    DeleteModel('Message')
]
#----------------------
#----- Evolution for accounts
from django_evolution.mutations import AddField
from django.db import models


MUTATIONS = [
    AddField('Profile', 'timezone', models.CharField, initial=u'UTC', 
max_length=20),
    AddField('Profile', 'open_an_issue', models.BooleanField, initial=True)
]
#----------------------
#----- Evolution for diffviewer
from django_evolution.mutations import AddField, DeleteField
from django.db import models
from djblets.util.fields import Base64Field


MUTATIONS = [
    AddField('DiffSetHistory', 'last_diff_updated', models.DateTimeField, 
null=True),
    AddField('FileDiff', 'diff_hash', models.ForeignKey, null=True, 
related_model='diffviewer.FileDiffData'),
    AddField('FileDiff', 'parent_diff_hash', models.ForeignKey, null=True, 
related_model='diffviewer.FileDiffData'),
    AddField('FileDiff', 'diff64', Base64Field, initial='', 
db_column='diff_base64'),
    AddField('FileDiff', 'parent_diff64', Base64Field, initial='', 
db_column='parent_diff_base64'),
    DeleteField('FileDiff', 'parent_diff'),
    DeleteField('FileDiff', 'diff')
]
#----------------------
#----- Evolution for reviews
from django_evolution.mutations import AddField, DeleteField
from django.db import models
from djblets.util.fields import JSONField


MUTATIONS = [
    AddField('FileAttachmentComment', 'extra_data', JSONField, null=True),
    AddField('ReviewRequest', 'last_review_activity_timestamp', 
models.DateTimeField, null=True, db_column='last_review_timestamp'),
    DeleteField('ReviewRequest', 'last_review_timestamp')
]
#----------------------
Trial evolution successful.
Run './manage.py evolve --hint --execute' to apply evolution.

[root@localhost reviewboard]# rb-site manage /var/www/reviews.example.info/ 
evolve -- --hint --execute

You have requested a database evolution. This will alter tables
and data currently in the 'default' database, and may result in
IRREVERSABLE DATA LOSS. Evolutions should be *thoroughly* reviewed
prior to execution.

Are you sure you want to execute the evolutions?

Type 'yes' to continue, or 'no' to cancel: yes
Error: Error applying evolution: (1101, "BLOB/TEXT column 'diff_base64' can't 
have a default value")

Reply via email to