Thanks David! I will give it a try! On Wednesday, May 3, 2017 at 4:25:03 PM UTC-7, David Trowbridge wrote: > > Kevin, > > The correct solution is to write your own evolution. See > https://www.reviewboard.org/docs/manual/2.5/extending/extensions/models/#making-changes-to-custom-models > for > instructions on how to do this and where to put the file. > > -David > > On Wed, May 3, 2017 at 4:08 PM Kevin Yu <[email protected] <javascript:>> > wrote: > >> Hi All, >> >> Recently we updated our database schema to add another field to a table >> that's used by our own reviewboard extension. When we run python setup.py >> install to install the extension, we run into the following error: >> >> stdout: Project signature has changed - an evolution is required >> >> >> stderr: WARNING:py.warnings:/usr/local/lib/python2.7/dist-packages/Django >> -1.6.11-py2.7.egg/django/db/backends/mysql/base.py:124: Warning: >> Specified key was too long; max key length is 767 bytes >> return self.cursor.execute(query, args) >> >> >> ERROR:root:Error evolving extension models: Your models contain changes >> that Django Evolution cannot resolve automatically.: 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: >> In model fortinet.required_by_branch: >> Field 'CLI_review_group' has been added >> Traceback (most recent call last): >> File >> "/usr/local/lib/python2.7/dist-packages/Djblets-0.9.3-py2.7.egg/djblets/extensions/manager.py" >> , line 1068, in _migrate_extension_models >> stdout=stream, stderr=stream) >> File >> "/usr/local/lib/python2.7/dist-packages/Django-1.6.11-py2.7.egg/django/core/management/base.py" >> , line 285, in execute >> output = self.handle(*args, **options) >> File >> "/usr/local/lib/python2.7/dist-packages/django_evolution-0.7.6-py2.7.egg/django_evolution/management/commands/evolve.py" >> , line 65, in handle >> self.evolve(*app_labels, **options) >> File >> "/usr/local/lib/python2.7/dist-packages/django_evolution-0.7.6-py2.7.egg/django_evolution/management/commands/evolve.py" >> , line 133, in evolve >> self.check_simulation() >> File >> "/usr/local/lib/python2.7/dist-packages/django_evolution-0.7.6-py2.7.egg/django_evolution/management/commands/evolve.py" >> , line 262, in check_simulation >> raise CommandError('Your models contain changes that Django ' >> CommandError: Your models contain changes that Django Evolution cannot >> resolve automatically. >> >> >> >> Eventually, what we had to do is manually add the field to mysql, then >> run the following commands and restart apache2. >> rb-site manage /var/www/reviews.example.com shell >> from django_evolution.models import Version >> Version.objects.exclude(evolutions__pk__gt=0).delete() >> >> >> I know this is probably a hack at the moment, but what would be the >> proper time to handle database schema update for reviewboard extension? The >> Reviewboard version i'm using is 2.5.6.1. >> >> -- >> Supercharge your Review Board with Power Pack: >> https://www.reviewboard.org/powerpack/ >> Want us to host Review Board for you? Check out RBCommons: >> https://rbcommons.com/ >> Happy user? Let us know! https://www.reviewboard.org/users/ >> --- >> You received this message because you are subscribed to the Google Groups >> "reviewboard" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> For more options, visit https://groups.google.com/d/optout. >> >
-- Supercharge your Review Board with Power Pack: https://www.reviewboard.org/powerpack/ Want us to host Review Board for you? Check out RBCommons: https://rbcommons.com/ Happy user? Let us know! https://www.reviewboard.org/users/ --- You received this message because you are subscribed to the Google Groups "reviewboard" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
