Yep thanks, index looks to be running now. Hopefully it will get to the end this time - if so I'll make the same change on our live system.
Cheers Rob On Wednesday, 18 October 2017 14:42:55 UTC+1, Erik Johansson wrote: > > I'm guessing the if statement should be "if not ..." (i.e. not is missing). > > // Erik > > > On Oct 18, 2017 12:44, "'Rob Backhurst' via reviewboard" < > [email protected] <javascript:>> wrote: > > Hi Chris, > > Ah yes sorry missed that...I have added it in but I get the same error > though. > > 81 # Check for `__` in the field for looking through the > relation. > 82 attrs = self.model_attr.split('__') > 83 current_object = obj > 84 > 85 for attr in attrs: > 86 hasattr(current_object, attr) > 87 > 88 if hasattr(current_object, attr): > 89 raise SearchFieldError("The model '%s' > does not have a model_attr '%s'." % (repr(current_object), attr)) > 90 > 91 current_object = getattr(current_object, attr, > None) > 92 > 93 if current_object is None: > 94 if self.has_default(): > 95 current_object = self._default > 96 # Fall out of the loop, given any further > attempts at > > > File "/usr/lib/python2.7/site-packages/haystack/fields.py", line 89, in > prepare > raise SearchFieldError("The model '%s' does not have a model_attr > '%s'." % (repr(current_object), attr)) > haystack.exceptions.SearchFieldError: The model '<User: admin>' does not > have a model_attr 'username'. > > > Thanks > Rob > > > > On Wednesday, 18 October 2017 10:02:54 UTC+1, Christian Hammond wrote: > >> Hi Rob, >> >> That doesn't include the code I mentioned in my previous e-mail. Note the >> standalone 'hasattr' call on the line preceding the if statement. The >> workaround is to call that in a standalone way to prime a cache and avoid >> the error. >> >> Christian >> >> On Tue, Oct 17, 2017 at 1:17 AM, 'Rob Backhurst' via reviewboard < >> [email protected]> wrote: >> >>> 77 # Give priority to a template. >>> 78 if self.use_template: >>> 79 return self.prepare_template(obj) >>> 80 elif self.model_attr is not None: >>> 81 # Check for `__` in the field for looking through >>> the relation. >>> 82 attrs = self.model_attr.split('__') >>> 83 current_object = obj >>> 84 >>> 85 for attr in attrs: >>> 86 if hasattr(current_object, attr): >>> 87 raise SearchFieldError("The model '%s' >>> does not have a model_attr '%s'." % (repr(current_object), attr)) >>> 88 >>> 89 current_object = getattr(current_object, attr, >>> None) >>> 90 >>> 91 if current_object is None: >>> 92 if self.has_default(): >>> 93 current_object = self._default >>> 94 # Fall out of the loop, given any >>> further attempts at >>> 95 # accesses will fail misreably. >>> >>> >>> Thanks >>> Rob >>> >>> On Tuesday, 17 October 2017 06:28:49 UTC+1, Christian Hammond wrote: >>>> >>>> Can you show me all the code within about 5 lines of your modification? >>>> >>>> Christian >>>> >>>> >>>> On Mon, Oct 16, 2017 at 18:01 'Rob Backhurst' via reviewboard < >>>> [email protected]> wrote: >>>> >>>>> Hi Christian, >>>>> >>>>> It crashes straight away with this error... >>>>> >>>>> Removing all documents from your index because you said so. >>>>> All documents removed. >>>>> Indexing 558 users >>>>> ERROR:root:Error updating auth using default >>>>> Traceback (most recent call last): >>>>> File >>>>> "/usr/lib/python2.7/site-packages/haystack/management/commands/update_index.py", >>>>> >>>>> line 188, in handle_label >>>>> self.update_backend(label, using) >>>>> File >>>>> "/usr/lib/python2.7/site-packages/haystack/management/commands/update_index.py", >>>>> >>>>> line 233, in update_backend >>>>> do_update(backend, index, qs, start, end, total, >>>>> verbosity=self.verbosity, commit=self.commit) >>>>> File >>>>> "/usr/lib/python2.7/site-packages/haystack/management/commands/update_index.py", >>>>> >>>>> line 96, in do_update >>>>> backend.update(index, current_qs, commit=commit) >>>>> File >>>>> "/usr/lib/python2.7/site-packages/haystack/backends/whoosh_backend.py", >>>>> line 196, in update >>>>> doc = index.full_prepare(obj) >>>>> File "/usr/lib/python2.7/site-packages/haystack/indexes.py", line >>>>> 212, in full_prepare >>>>> self.prepared_data = self.prepare(obj) >>>>> File "/usr/lib/python2.7/site-packages/haystack/indexes.py", line >>>>> 203, in prepare >>>>> self.prepared_data[field.index_fieldname] = field.prepare(obj) >>>>> File "/usr/lib/python2.7/site-packages/haystack/fields.py", line >>>>> 159, in prepare >>>>> return self.convert(super(CharField, self).prepare(obj)) >>>>> File "/usr/lib/python2.7/site-packages/haystack/fields.py", line 87, >>>>> in prepare >>>>> raise SearchFieldError("The model '%s' does not have a model_attr >>>>> '%s'." % (repr(current_object), attr)) >>>>> SearchFieldError: The model '<User: admin>' does not have a model_attr >>>>> 'username'. >>>>> - show quoted text - >>>>> File "/usr/lib/python2.7/site-packages/haystack/fields.py", line >>>>> 159, in prepare >>>>> return self.convert(super(CharField, self).prepare(obj)) >>>>> File "/usr/lib/python2.7/site-packages/haystack/fields.py", line 87, >>>>> in prepare >>>>> raise SearchFieldError("The model '%s' does not have a model_attr >>>>> '%s'." % (repr(current_object), attr)) >>>>> haystack.exceptions.SearchFieldError: The model '<User: admin>' does >>>>> not have a model_attr 'username'. >>>>> >>>>> Thanks >>>>> Rob >>>>> >>>>> On Monday, 16 October 2017 22:46:09 UTC+1, Christian Hammond wrote: >>>>> >>>>>> Hi Rob, >>>>>> >>>>>> Actually, this should function as a workaround for now. You can do >>>>>> this in that same Haystack file. Change the entirety of that previous >>>>>> code >>>>>> to: >>>>>> >>>>>> hasattr(current_object, attr) >>>>>> >>>>>> if hasattr(current_object, attr): >>>>>> raise SearchFieldError("The model '%s' does not have a >>>>>> model_attr '%s'." % (repr(current_object), attr)) >>>>>> >>>>>> What will happen is the initial hasattr will trigger the crash that's >>>>>> resulting in the failure, but we're discarding the result of the initial >>>>>> one. A lucky (in this case) side-effect is that only the first call on a >>>>>> given review request will fail, and the second will succeed (internal >>>>>> state >>>>>> caching stuff). This should allow a full index to proceed. >>>>>> >>>>>> It's a temporary fix until we get the next release out. >>>>>> >>>>>> Christian >>>>>> >>>>> On Mon, Oct 16, 2017 at 11:48 AM, 'Rob Backhurst' via reviewboard < >>>>>> [email protected]> wrote: >>>>>> >>>>> Thanks Christian, is that something we’ll need to do directly to the >>>>>>> database? I don’t suppose you have any info on what needs to be done? >>>>>>> Our >>>>>>> DBA is on leave at the mo. >>>>>>> >>>>>>> No probs, not always easy to get to the bottom of these things! >>>>>>> >>>>>>> Thanks >>>>>>> >>>>>> Rob >>>>>>> >>>>>>> Sent from my iPhone >>>>>>> >>>>>>> On 16 Oct 2017, at 19:15, Christian Hammond <[email protected]> >>>>>>> wrote: >>>>>>> >>>>>>> Interesting. Okay, yeah, you'd need to remove the commit ID from one >>>>>>> of them for now. I'll put a fix together for the next 2.5.x and >>>>>>> schedule a >>>>>>> release. Thanks for your patience on this! >>>>>>> >>>>>>> Christian >>>>>>> >>>>>>> >>>>>>> On Mon, Oct 16, 2017 at 07:46 'Rob Backhurst' via reviewboard < >>>>>>> [email protected]> wrote: >>>>>>> >>>>>>> Hi Christian, >>>>>>>> >>>>>>>> Here you go... >>>>>>>> >>>>>>>> ERROR:root:Error updating reviews using default >>>>>>>> Traceback (most recent call last): >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/haystack/management/commands/update_index.py", >>>>>>>> >>>>>>>> line 188, in handle_label >>>>>>>> self.update_backend(label, using) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/haystack/management/commands/update_index.py", >>>>>>>> >>>>>>>> line 233, in update_backend >>>>>>>> do_update(backend, index, qs, start, end, total, >>>>>>>> verbosity=self.verbosity, commit=self.commit) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/haystack/management/commands/update_index.py", >>>>>>>> >>>>>>>> line 96, in do_update >>>>>>>> backend.update(index, current_qs, commit=commit) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/haystack/backends/whoosh_backend.py", >>>>>>>> >>>>>>>> line 196, in update >>>>>>>> doc = index.full_prepare(obj) >>>>>>>> File "/usr/lib/python2.7/site-packages/haystack/indexes.py", line >>>>>>>> 212, in full_prepare >>>>>>>> self.prepared_data = self.prepare(obj) >>>>>>>> File "/usr/lib/python2.7/site-packages/haystack/indexes.py", line >>>>>>>> 203, in prepare >>>>>>>> self.prepared_data[field.index_fieldname] = field.prepare(obj) >>>>>>>> File "/usr/lib/python2.7/site-packages/haystack/fields.py", line >>>>>>>> 166, in prepare >>>>>>>> return self.convert(super(CharField, self).prepare(obj)) >>>>>>>> File "/usr/lib/python2.7/site-packages/haystack/fields.py", line >>>>>>>> 90, in prepare >>>>>>>> getattr(current_object, attr) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/reviewboard/reviews/models/review_request.py", >>>>>>>> >>>>>>>> line 273, in get_commit >>>>>>>> commit_id=six.text_type(self.changenum)) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/django/db/models/query.py", line >>>>>>>> 493, in >>>>>>>> update >>>>>>>> rows = query.get_compiler(self.db).execute_sql(None) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/django/db/models/sql/compiler.py", >>>>>>>> line >>>>>>>> 980, in execute_sql >>>>>>>> cursor = super(SQLUpdateCompiler, self).execute_sql(result_type) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/django/db/models/sql/compiler.py", >>>>>>>> line >>>>>>>> 786, in execute_sql >>>>>>>> cursor.execute(sql, params) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/django/db/backends/util.py", line >>>>>>>> 53, in >>>>>>>> execute >>>>>>>> return self.cursor.execute(sql, params) >>>>>>>> File "/usr/lib/python2.7/site-packages/django/db/utils.py", line >>>>>>>> 99, in __exit__ >>>>>>>> six.reraise(dj_exc_type, dj_exc_value, traceback) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/django/db/backends/util.py", line >>>>>>>> 53, in >>>>>>>> execute >>>>>>>> return self.cursor.execute(sql, params) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/django/db/backends/mysql/base.py", >>>>>>>> line >>>>>>>> 124, in execute >>>>>>>> return self.cursor.execute(query, args) >>>>>>>> File "/usr/lib64/python2.7/site-packages/MySQLdb/cursors.py", >>>>>>>> line 205, in execute >>>>>>>> self.errorhandler(self, exc, value) >>>>>>>> File "/usr/lib64/python2.7/site-packages/MySQLdb/connections.py", >>>>>>>> line 36, in defaulterrorhandler >>>>>>>> raise errorclass, errorvalue >>>>>>>> IntegrityError: (1062, "Duplicate entry '1701871-1' for key >>>>>>>> 'reviews_reviewrequest_b8c24015'") >>>>>>>> Traceback (most recent call last): >>>>>>>> File "/usr/bin/rb-site", line 9, in <module> >>>>>>>> load_entry_point('ReviewBoard==2.5.16', 'console_scripts', >>>>>>>> 'rb-site')() >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/reviewboard/cmdline/rbsite.py", line >>>>>>>> 1964, in main >>>>>>>> command.run() >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/reviewboard/cmdline/rbsite.py", line >>>>>>>> 1884, in run >>>>>>>> site.run_manage_command(args[0], args[1:]) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/reviewboard/cmdline/rbsite.py", line >>>>>>>> 712, >>>>>>>> in run_manage_command >>>>>>>> execute_from_command_line([__file__, cmd] + params) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/django/core/management/__init__.py", >>>>>>>> line >>>>>>>> 399, in execute_from_command_line >>>>>>>> utility.execute() >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/django/core/management/__init__.py", >>>>>>>> line >>>>>>>> 392, in execute >>>>>>>> self.fetch_command(subcommand).run_from_argv(self.argv) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/django/core/management/base.py", >>>>>>>> line >>>>>>>> 242, in run_from_argv >>>>>>>> self.execute(*args, **options.__dict__) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/django/core/management/base.py", >>>>>>>> line >>>>>>>> 285, in execute >>>>>>>> output = self.handle(*args, **options) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/reviewboard/reviews/management/commands/index.py", >>>>>>>> >>>>>>>> line 19, in handle >>>>>>>> call_command('rebuild_index', interactive=False) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/django/core/management/__init__.py", >>>>>>>> line >>>>>>>> 159, in call_command >>>>>>>> return klass.execute(*args, **defaults) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/django/core/management/base.py", >>>>>>>> line >>>>>>>> 285, in execute >>>>>>>> output = self.handle(*args, **options) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/haystack/management/commands/rebuild_index.py", >>>>>>>> >>>>>>>> line 26, in handle >>>>>>>> call_command('update_index', **options) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/django/core/management/__init__.py", >>>>>>>> line >>>>>>>> 159, in call_command >>>>>>>> return klass.execute(*args, **defaults) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/django/core/management/base.py", >>>>>>>> line >>>>>>>> 285, in execute >>>>>>>> output = self.handle(*args, **options) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/haystack/management/commands/update_index.py", >>>>>>>> >>>>>>>> line 183, in handle >>>>>>>> return super(Command, self).handle(*items, **options) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/django/core/management/base.py", >>>>>>>> line >>>>>>>> 385, in handle >>>>>>>> label_output = self.handle_label(label, **options) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/haystack/management/commands/update_index.py", >>>>>>>> >>>>>>>> line 188, in handle_label >>>>>>>> self.update_backend(label, using) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/haystack/management/commands/update_index.py", >>>>>>>> >>>>>>>> line 233, in update_backend >>>>>>>> do_update(backend, index, qs, start, end, total, >>>>>>>> verbosity=self.verbosity, commit=self.commit) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/haystack/management/commands/update_index.py", >>>>>>>> >>>>>>>> line 96, in do_update >>>>>>>> backend.update(index, current_qs, commit=commit) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/haystack/backends/whoosh_backend.py", >>>>>>>> >>>>>>>> line 196, in update >>>>>>>> doc = index.full_prepare(obj) >>>>>>>> File "/usr/lib/python2.7/site-packages/haystack/indexes.py", line >>>>>>>> 212, in full_prepare >>>>>>>> self.prepared_data = self.prepare(obj) >>>>>>>> File "/usr/lib/python2.7/site-packages/haystack/indexes.py", line >>>>>>>> 203, in prepare >>>>>>>> self.prepared_data[field.index_fieldname] = field.prepare(obj) >>>>>>>> File "/usr/lib/python2.7/site-packages/haystack/fields.py", line >>>>>>>> 166, in prepare >>>>>>>> return self.convert(super(CharField, self).prepare(obj)) >>>>>>>> File "/usr/lib/python2.7/site-packages/haystack/fields.py", line >>>>>>>> 90, in prepare >>>>>>>> getattr(current_object, attr) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/reviewboard/reviews/models/review_request.py", >>>>>>>> >>>>>>>> line 273, in get_commit >>>>>>>> commit_id=six.text_type(self.changenum)) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/django/db/models/query.py", line >>>>>>>> 493, in >>>>>>>> update >>>>>>>> rows = query.get_compiler(self.db).execute_sql(None) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/django/db/models/sql/compiler.py", >>>>>>>> line >>>>>>>> 980, in execute_sql >>>>>>>> cursor = super(SQLUpdateCompiler, self).execute_sql(result_type) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/django/db/models/sql/compiler.py", >>>>>>>> line >>>>>>>> 786, in execute_sql >>>>>>>> cursor.execute(sql, params) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/django/db/backends/util.py", line >>>>>>>> 53, in >>>>>>>> execute >>>>>>>> return self.cursor.execute(sql, params) >>>>>>>> File "/usr/lib/python2.7/site-packages/django/db/utils.py", line >>>>>>>> 99, in __exit__ >>>>>>>> six.reraise(dj_exc_type, dj_exc_value, traceback) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/django/db/backends/util.py", line >>>>>>>> 53, in >>>>>>>> execute >>>>>>>> return self.cursor.execute(sql, params) >>>>>>>> File >>>>>>>> "/usr/lib/python2.7/site-packages/django/db/backends/mysql/base.py", >>>>>>>> line >>>>>>>> 124, in execute >>>>>>>> return self.cursor.execute(query, args) >>>>>>>> File "/usr/lib64/python2.7/site-packages/MySQLdb/cursors.py", >>>>>>>> line 205, in execute >>>>>>>> self.errorhandler(self, exc, value) >>>>>>>> File "/usr/lib64/python2.7/site-packages/MySQLdb/connections.py", >>>>>>>> line 36, in defaulterrorhandler >>>>>>>> raise errorclass, errorvalue >>>>>>>> django.db.utils.IntegrityError: (1062, "Duplicate entry '1701871-1' >>>>>>>> for key 'reviews_reviewrequest_b8c24015'") >>>>>>>> >>>>>>>> >>>>>>>> The error looks familiar - we had some issue sin the past with >>>>>>>> duplicate entries. >>>>>>>> The index never used to fail for them though... >>>>>>>> >>>>>>>> Thanks >>>>>>>> Rob >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> On Monday, 16 October 2017 10:38:52 UTC+1, Christian Hammond wrote: >>>>>>>> >>>>>>>>> Hi Rob, >>>>>>>>> >>>>>>>>> I think what's happening is that there's an exception being raised >>>>>>>>> the first time this is accessed that is resulting in hasattr failing. >>>>>>>>> One >>>>>>>>> more check (I'm about to go to bed so I'll have to follow up in the >>>>>>>>> morning). >>>>>>>>> >>>>>>>>> Before the "has_attr = ..." line, add: >>>>>>>>> >>>>>>>>> if attr == 'commit': >>>>>>>>> getattr(current_object, attr) >>>>>>>>> >>>>>>>>> I imagine that's going to result in a new crash, which is good. >>>>>>>>> Show me what that says. >>>>>>>>> >>>>>>>>> Christian >>>>>>>>> >>>>>>>> On Mon, Oct 16, 2017 at 2:09 AM, 'Rob Backhurst' via reviewboard < >>>>>>>>> [email protected]> wrote: >>>>>>>>> >>>>>>>> Hi Chris, >>>>>>>>>> >>>>>>>>>> Certainly seems a bit weird - I appreciate all your efforts so >>>>>>>>>> far!. >>>>>>>>>> See the out put from the latest index below. If this doesn't tell >>>>>>>>>> you anything useful, perhaps we can try (on our test system) >>>>>>>>>> removing the >>>>>>>>>> review/record that seems to be causing this and re-run the index? >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> ERROR:root:Error updating reviews using default >>>>>>>>>> Traceback (most recent call last): >>>>>>>>>> File >>>>>>>>>> "/usr/lib/python2.7/site-packages/haystack/management/commands/update_index.py", >>>>>>>>>> >>>>>>>>>> line 188, in handle_label >>>>>>>>>> self.update_backend(label, using) >>>>>>>>>> File >>>>>>>>>> "/usr/lib/python2.7/site-packages/haystack/management/commands/update_index.py", >>>>>>>>>> >>>>>>>>>> line 233, in update_backend >>>>>>>>>> do_update(backend, index, qs, start, end, total, >>>>>>>>>> verbosity=self.verbosity, commit=self.commit) >>>>>>>>>> File >>>>>>>>>> "/usr/lib/python2.7/site-packages/haystack/management/commands/update_index.py", >>>>>>>>>> >>>>>>>>>> line 96, in do_update >>>>>>>>>> backend.update(index, current_qs, commit=commit) >>>>>>>>>> File >>>>>>>>>> "/usr/lib/python2.7/site-packages/haystack/backends/whoosh_backend.py", >>>>>>>>>> >>>>>>>>>> line 196, in update >>>>>>>>>> doc = index.full_prepare(obj) >>>>>>>>>> File "/usr/lib/python2.7/site-packages/haystack/indexes.py", >>>>>>>>>> line 212, in full_prepare >>>>>>>>>> self.prepared_data = self.prepare(obj) >>>>>>>>>> File "/usr/lib/python2.7/site-packages/haystack/indexes.py", >>>>>>>>>> line 203, in prepare >>>>>>>>>> self.prepared_data[field.index_fieldname] = field.prepare(obj) >>>>>>>>>> File "/usr/lib/python2.7/site-packages/haystack/fields.py", >>>>>>>>>> line 164, in prepare >>>>>>>>>> return self.convert(super(CharField, self).prepare(obj)) >>>>>>>>>> File "/usr/lib/python2.7/site-packages/haystack/fields.py", >>>>>>>>>> line 92, in prepare >>>>>>>>>> raise SearchFieldError("The model '%s' ('%s' -- %s.%s at %s >>>>>>>>>> -- %s:%s) does not have a model_attr '%s' (%s -- %s)." % >>>>>>>>>> (obj.__class__.__name__, current_object.pk, >>>>>>>>>> current_object.__class__.__module__, >>>>>>>>>> current_object.__class__.__name__, >>>>>>>>>> inspect.getfile(obj.__class__), id(obj), id(current_object), attr, >>>>>>>>>> hasattr(current_object, attr), has_attr)) >>>>>>>>>> SearchFieldError: The model 'ReviewRequest' ('27393' -- >>>>>>>>>> reviewboard.reviews.models.review_request.ReviewRequest at >>>>>>>>>> /usr/lib/python2.7/site-packages/reviewboard/reviews/models/review_request.pyc >>>>>>>>>> >>>>>>>>>> -- 231638480:231638480) does not have a model_attr 'commit' (True -- >>>>>>>>>> False). >>>>>>>>>> Traceback (most recent call last): >>>>>>>>>> File "/usr/bin/rb-site", line 9, in <module> >>>>>>>>>> load_entry_point('ReviewBoard==2.5.16', 'console_scripts', >>>>>>>>>> 'rb-site')() >>>>>>>>>> File >>>>>>>>>> "/usr/lib/python2.7/site-packages/reviewboard/cmdline/rbsite.py", >>>>>>>>>> line >>>>>>>>>> 1964, in main >>>>>>>>>> command.run() >>>>>>>>>> File >>>>>>>>>> "/usr/lib/python2.7/site-packages/reviewboard/cmdline/rbsite.py", >>>>>>>>>> line >>>>>>>>>> 1884, in run >>>>>>>>>> site.run_manage_command(args[0], args[1:]) >>>>>>>>>> File >>>>>>>>>> "/usr/lib/python2.7/site-packages/reviewboard/cmdline/rbsite.py", >>>>>>>>>> line 712, >>>>>>>>>> in run_manage_command >>>>>>>>>> execute_from_command_line([__file__, cmd] + params) >>>>>>>>>> File >>>>>>>>>> "/usr/lib/python2.7/site-packages/django/core/management/__init__.py", >>>>>>>>>> line >>>>>>>>>> 399, in execute_from_command_line >>>>>>>>>> utility.execute() >>>>>>>>>> File >>>>>>>>>> "/usr/lib/python2.7/site-packages/django/core/management/__init__.py", >>>>>>>>>> line >>>>>>>>>> 392, in execute >>>>>>>>>> self.fetch_command(subcommand).run_from_argv(self.argv) >>>>>>>>>> File >>>>>>>>>> "/usr/lib/python2.7/site-packages/django/core/management/base.py", >>>>>>>>>> line >>>>>>>>>> 242, in run_from_argv >>>>>>>>>> self.execute(*args, **options.__dict__) >>>>>>>>>> File >>>>>>>>>> "/usr/lib/python2.7/site-packages/django/core/management/base.py", >>>>>>>>>> line >>>>>>>>>> 285, in execute >>>>>>>>>> output = self.handle(*args, **options) >>>>>>>>>> File "/usr/lib/python2.7/site-packa< >>>>>>>>>> >>>>>>>>> -- 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.
