Hi,

I'm having this same problem also.  Interestingly I have other models
being indexed by TS such as a news and events models, and they are
indexing fine within the same radiant app.  As soon as I remove the
Page define_index method the ts:index and search results work fine.

I've tried tweaking the define_index method in the PageExtensions
module, but nothing seems to fix the problem.

Regards

John

On Jan 5, 12:23 pm, Pat Allan <[email protected]> wrote:
> Thanks for that Christian - I was able to reproduce the issue. Now I just 
> need to find some time to figure out why it's happening :)
>
> --
> Pat
>
> On 05/01/2010, at 7:43 PM, Christian Aust wrote:
>
>
>
> > Hi Pat & Josh,
>
> > that's fairly easy to reproduce, detailled steps are on gist:
>
> >http://gist.github.com/269247
>
> > Even the rake task of setting up TS crashes. Any idea? Kind regards,
>
> > Christian
>
> > On 3 Jan., 05:00, Pat Allan <[email protected]> wrote:
> >> Hi Christian
>
> >> Are you able to put together a sample app that reproduces this issue? I'm 
> >> not sure if the fault is in Thinking Sphinx, Rails, or Radiant. Your 
> >> extension seems simple enough, and isn't doing anything complex, so I very 
> >> much doubt that's at fault.
>
> >> If you can do this, feel free to send it to me off-list (or if you put it 
> >> into GitHub, just give me read access).
>
> >> Cheers
>
> >> --
> >> Pat
>
> >> On 02/01/2010, at 7:29 PM, Christian Aust wrote:
>
> >>> Hi Pat,
>
> >>> there's no too much code in that extension, basically it goes like
> >>> this:
>
> >>> When the extension loads, it executes this:
>
> >>>>  def activate
> >>>>    Page.send(:include, SphinxSearch::PageExtensions)
> >>>>    # [...]
> >>>>  end
>
> >>> The PageExtensions look like this:
>
> >>>>   def self.included(base)
> >>>>     base.define_index do
> >>>>       set_property :delta => true, :group_concat_max_len => 8.kilobytes
> >>>>       set_property :field_weights => { 'title' => 100 }
> >>>>       indexes :title, parts.content
> >>>>             indexes :tools, :roles, :duration, :customer
> >>>>       has :updated_at, :status_id
> >>>>       has :searchable, :type => :boolean
> >>>>     end
> >>>>   end
>
> >>> The errors occur with instances of classes that are a subclass of
> >>> Page, as if those instances of certain subclasses hadn't been
> >>> initialized properly. Is there something wrong with the way how
> >>> classes are extended by the code above? Regards,
>
> >>> Christian
>
> >>> On 2 Jan., 07:27, Pat Allan <[email protected]> wrote:
> >>>> Hi Christian
>
> >>>> I think that might be the Radiant extension that's having problems - 
> >>>> though I'm not certain.
>
> >>>> sphinx_indexes is set when define_index is called - and so, this should 
> >>>> happen when the model is loaded. The fact that it's no longer set 
> >>>> suggests that it could be tied to cache_classes or something like that.
>
> >>>> --
> >>>> Pat
>
> >>>> On 02/01/2010, at 8:20 AM, Christian Aust wrote:
>
> >>>>> Hi all,
>
> >>>>> I'm using TS with Radiant, which causes me some trouble currently.
> >>>>> Actually I'm not sure if this is originally a problem of TS, or if
> >>>>> it's the radiant extension causing the error, but let me explain:
>
> >>>>> I've upgraded the TS gem to 1.3.14, and my application started to spit
> >>>>> out errors every now and then. Errors occur when I try to edit a page
> >>>>> that's a subclass of the ActiveRecord base class "Page", not a page
> >>>>> itself. There are two errors that I spotted so far:
>
> >>>>>> NoMethodError (undefined method `any?' for nil:NilClass):
> >>>>>>  /usr/lib/ruby/gems/1.8/gems/thinking-sphinx-1.3.14/lib/thinking_sphinx/acti
> >>>>>>  ve_record/delta.rb:50:in `indexed_data_changed?'
> >>>>>>  /usr/lib/ruby/gems/1.8/gems/thinking-sphinx-1.3.14/lib/thinking_sphinx/acti
> >>>>>>  ve_record/delta.rb:46:in `should_toggle_delta?'
> >>>>>>  /usr/lib/ruby/gems/1.8/gems/thinking-sphinx-1.3.14/lib/thinking_sphinx/acti
> >>>>>>  ve_record/delta.rb:35:in `toggle_delta'
> >>>>>>  vendor/extensions/reorder/lib/reorder/pages_controller_extensions.rb:7:in
> >>>>>>  `send'
> >>>>>>  vendor/extensions/reorder/lib/reorder/pages_controller_extensions.rb:7:in
> >>>>>>  `move_lower'
> >>>>>>  radiant (0.8.1) 
> >>>>>> vendor/plugins/haml/rails/./lib/sass/plugin/rails.rb:19:in `process'
>
> >>>>> Theres another NoMethodError in active_record.rb:193 where the code
> >>>>> tries to add an index to self.sphinx_indexes which is nil sometimes,
> >>>>> which is easy to work around: I've added "unless
> >>>>> self.sphinx_indexes.nil?" at the end of the line and was fine so far.
>
> >>>>> Can somebody help me to understand whether this is something TS-
> >>>>> related or should I check the code of the Radiant extension? Kind
> >>>>> regards,
>
> >>>>> Christian
>
> >>>>> --
>
> >>>>> You received this message because you are subscribed to the Google 
> >>>>> Groups "Thinking Sphinx" group.
> >>>>> To post to this group, send email to [email protected].
> >>>>> To unsubscribe from this group, send email to 
> >>>>> [email protected].
> >>>>> For more options, visit this group 
> >>>>> athttp://groups.google.com/group/thinking-sphinx?hl=en.
>
> >>> --
>
> >>> You received this message because you are subscribed to the Google Groups 
> >>> "Thinking Sphinx" group.
> >>> To post to this group, send email to [email protected].
> >>> To unsubscribe from this group, send email to 
> >>> [email protected].
> >>> For more options, visit this group 
> >>> athttp://groups.google.com/group/thinking-sphinx?hl=en.
>
> > --
>
> > You received this message because you are subscribed to the Google Groups 
> > "Thinking Sphinx" group.
> > To post to this group, send email to [email protected].
> > To unsubscribe from this group, send email to 
> > [email protected].
> > For more options, visit this group 
> > athttp://groups.google.com/group/thinking-sphinx?hl=en.
-- 
You received this message because you are subscribed to the Google Groups 
"Thinking Sphinx" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/thinking-sphinx?hl=en.


Reply via email to