Hi Rob,
Stephen and I dug into this a bit. Turns out the version discrepancy comes
from an error in the upstream tarball's reported version. So you likely do
have only one version of this installed.
I'm going to give you some additional code to place in that fields.py file,
so we can get more information. On line 87, it's doing a:
raise SearchFieldError("The model '%s' does not have a model_attr
'%s'." % (repr(obj), attr))
Can you change that to:
raise SearchFieldError("The model '%s' ('%s' -- %s) does not have a
model_attr '%s' (%s)." % (repr(obj), repr(current_object),
current_object.__class__.__name__, attr, hasattr(current_object, attr)))
Then restart Apache and try again. See what information you get.
Christian
On Fri, Oct 6, 2017 at 11:17 AM, 'Rob Backhurst' via reviewboard <
[email protected]> wrote:
> Hi Stephen,
>
> I did think that might be the case, but I have only installed using yum.
> I have a test system setup in the same way (and showing the same
> behaviour) and checked to see if any packages had been installed using pip,
> but they have not...
>
> I’m not not particularly savvy with pip/easy_install though so if you can
> suggest any tricks to show for sure, that would be great.
>
> Thanks
> Rob
>
> Sent from my iPhone
>
> On 6 Oct 2017, at 19:10, Stephen Gallagher <[email protected]>
> wrote:
>
> Rob, did you install ReviewBoard using pip or using the EPEL 7 RPM?
>
> From above, it looks like you may have two copies of Haystack on your
> system, one installed via RPM and the other possibly installed by
> pip/easy_install. You will need to clear out the 2.1.1dev version.
> On Fri, Oct 6, 2017 at 1:32 PM Christian Hammond <[email protected]>
> wrote:
>
>> Hi Rob,
>>
>> It was a couple e-mails ago, but can you actually just attach /
>> usr/lib/python2.7/site-packages/haystack/fields.py? I'll see if that
>> logic differs from what is in 2.3.1.
>>
>> Christian
>>
>> On Fri, Oct 6, 2017 at 12:25 AM, 'Rob Backhurst' via reviewboard <
>> [email protected]> wrote:
>>
>>> Sorry, which one line?
>>>
>>> On Friday, 6 October 2017 00:59:12 UTC+1, Christian Hammond wrote:
>>>>
>>>> Hi Rob,
>>>>
>>>> That's the version listed in the source code for the version of
>>>> Haystack being run. Not sure if that indicates a packaging problem or what,
>>>> but it's very strange.
>>>>
>>>> Could you show me that one line in fields.py?
>>>>
>>>> Christian
>>>>
>>>>
>>>> On Thu, Oct 5, 2017 at 13:22 'Rob Backhurst' via reviewboard <
>>>> [email protected]> wrote:
>>>>
>>>>> Hi Christian,
>>>>>
>>>>> We deinately only have version 2.3.1 installed.
>>>>>
>>>>> python-django-haystack 2.3.1-1.el7
>>>>>
>>>>> Why would it think we're using 2.1.1 dev? Can we force it to look in
>>>>> the correct place?
>>>>>
>>>>> Thanks
>>>>> Rob
>>>>>
>>>>> On Tuesday, 3 October 2017 09:12:26 UTC+1, Rob Backhurst wrote:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> I upgraded our ReviewBoard system from 2.5.10 to 2.5.16 - since then,
>>>>>> indexing doesn't seem to complete.
>>>>>> The index starts OK, but after a while stops with this error...
>>>>>>
>>>>>> 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 189, in handle_label
>>>>>> self.update_backend(label, using)
>>>>>> File
>>>>>> "/usr/lib/python2.7/site-packages/haystack/management/commands/update_index.py",
>>>>>> line 234, in update_backend
>>>>>> do_update(backend, index, qs, start, end, total, self.verbosity)
>>>>>> File
>>>>>> "/usr/lib/python2.7/site-packages/haystack/management/commands/update_index.py",
>>>>>> line 89, in do_update
>>>>>> backend.update(index, current_qs)
>>>>>> File
>>>>>> "/usr/lib/python2.7/site-packages/haystack/backends/whoosh_backend.py",
>>>>>> line 191, in update
>>>>>> doc = index.full_prepare(obj)
>>>>>> File "/usr/lib/python2.7/site-packages/haystack/indexes.py", line
>>>>>> 207, in full_prepare
>>>>>> self.prepared_data = self.prepare(obj)
>>>>>> File "/usr/lib/python2.7/site-packages/haystack/indexes.py", line
>>>>>> 198, 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(obj), attr))
>>>>>> SearchFieldError: The model '<ReviewRequest: <CUT_REVIEW_NAME>' does
>>>>>> not have a model_attr 'commit'.
>>>>>> 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 21, in handle
>>>>>> call_command('update_index')
>>>>>> 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 184, 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 189, in handle_label
>>>>>> self.update_backend(label, using)
>>>>>> File
>>>>>> "/usr/lib/python2.7/site-packages/haystack/management/commands/update_index.py",
>>>>>> line 234, in update_backend
>>>>>> do_update(backend, index, qs, start, end, total, self.verbosity)
>>>>>> File
>>>>>> "/usr/lib/python2.7/site-packages/haystack/management/commands/update_index.py",
>>>>>> line 89, in do_update
>>>>>> backend.update(index, current_qs)
>>>>>> File
>>>>>> "/usr/lib/python2.7/site-packages/haystack/backends/whoosh_backend.py",
>>>>>> line 191, in update
>>>>>> doc = index.full_prepare(obj)
>>>>>> File "/usr/lib/python2.7/site-packages/haystack/indexes.py", line
>>>>>> 207, in full_prepare
>>>>>> self.prepared_data = self.prepare(obj)
>>>>>> File "/usr/lib/python2.7/site-packages/haystack/indexes.py", line
>>>>>> 198, 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(obj), attr))
>>>>>> haystack.exceptions.SearchFieldError: The model '<ReviewRequest:
>>>>>> CUT_REVIEW_NAME>' does not have a model_attr 'commit'.
>>>>>>
>>>>>> Any ideas what could be causing this?
>>>>>> We are running this on CentOS Linux release 7.4.1708 (Core)
>>>>>>
>>>>>> Thanks
>>>>>> Rob
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>> 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.
>>>>>
>>>> --
>>>> --
>>>> Christian Hammond
>>>> President/CEO of Beanbag
>>>> Makers of Review Board
>>>>
>>> --
>>> 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.
>>>
>>
>>
>>
>> --
>> Christian Hammond
>> President/CEO of Beanbag <https://www.beanbaginc.com/>
>> Makers of Review Board <https://www.reviewboard.org/>
>>
>> --
>> 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.
>>
> --
> 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 a topic in the
> Google Groups "reviewboard" group.
> To unsubscribe from this topic, visit https://groups.google.com/d/
> topic/reviewboard/52HnBiFJxp8/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> [email protected].
> 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.
>
--
Christian Hammond
President/CEO of Beanbag <https://www.beanbaginc.com/>
Makers of Review Board <https://www.reviewboard.org/>
--
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.