Hi,

No problem with debugging :) Thanks for great software.

And moving from 2.3.5 to 2.3.8 did indeed fix the problem.

I do get this line when rebuilding but I guess its not serious:
DEPRECATION WARNING: metaclass is deprecated and will be removed from
Rails 2.3 (use singleton_class instead). (called from add_excerpter
at /home/robert/radrails_e_workspace/glg-version-2/vendor/plugins/
thinking_sphinx/lib/thinking_sphinx/search.rb:297

Thanks for you help.

Warm regards,
Robert

On Jul 7, 3:46 am, Pat Allan <[email protected]> wrote:
> Hi Robert
>
> Sorry you've had to do all this debugging on your own - but great to know 
> you've found the cause.
>
> I think this is actually a Rails/ActiveRecord bug, not a Thinking Sphinx bug 
> (I've had someone raise it before) - as TS uses ActiveRecord to generate the 
> joins in the sql_query.
>
> So, I'm not sure if it's been fixed, but if you're not using 2.3.8, perhaps 
> it's worth upgrading - at least temporarily - to check? Otherwise, I think 
> manually editing the config and then using the ts:reindex task (to avoid 
> config regeneration) is the only approach.
>
> --
> Pat
>
> On 07/07/2010, at 4:02 AM, rbjarnason wrote:
>
>
>
> > I can confirm that the problem I've been facing is that
> > the :primary_key column seems to be ignored when building the
> > association SQL.  I have a good reason for using both id and uid
> > columns but in my test rig they have similar values causing this
> > unexpected behaviour.
>
> > or this definition:
>
> > belongs_to :project, :primary_key=>"uid", :foreign_key=>"project_uid"
>
> > This is generated:
> > LEFT OUTER JOIN `projects` ON `projects`.id =
> > `project_documents`.project_uid
>
> > Instead of:
> > LEFT OUTER JOIN `projects` ON `projects`.uid =
> > `project_documents`.project_uid
>
> > I can edit the config by hand, but is there any easy way around this
> > in the code?
>
> > Warm regards,
> > Robert
>
> > On Jul 6, 7:37 pm, rbjarnason <[email protected]> wrote:
> >> Hi,
>
> >> I think I've found the problem, its due to the construction of the SQL
> >> query, I'm using :primary_key and :foreign_key in the association and
> >> those don't seem to be picked up correctly in all places.
>
> >> Will post more detail later when I've confirmed that this is the
> >> problem.
>
> >> Warm regards,
> >> Robert
>
> >> On Jul 6, 6:22 pm, rbjarnason <[email protected]> wrote:
>
> >>> Hi,
>
> >>> I'm still trying to work out this problem.
>
> >>> I've added debug traces all over, and I have found something
> >>> interesting in the method add_from_results in facet_search.rb
>
> >>> After: "results.each_with_groupby_and_count { |result, group, count|"
> >>> I do:
> >>> RAILS_DEFAULT_LOGGER.debug("TS: facet_value #{facet_value} result
> >>> #{result} group #{group} count #{count}")
>
> >>> For the two Facets that do not show up as expected when searching the
> >>> group value is 0 while the count is 39 is both places.  The group
> >>> value has a large number for all the working Facets.
>
> >>> Any idea what a group value of 0 could signify in this context?
>
> >>> I also confirmed that the Facet search is converting the name of the
> >>> product to a crc32 value to do the Facet.for search and that all looks
> >>> normal compared to the Facet.for that work.
>
> >>> Warm regards,
> >>> Robert
>
> >>> On Jun 30, 4:40 pm, rbjarnason <[email protected]> wrote:
>
> >>>> Hi,
>
> >>>> I've got a strange problem when using Facets.  It reports one facet
> >>>> result having, in this example, 39 items but when I use @facets.for it
> >>>> returns an empty array.  There are about 20 other facets reported in
> >>>> this category and they all work as expected with @facets.for, its only
> >>>> the facet that has the largest number reported that does not return
> >>>> anything.  I can see the items that fit into the category in the main
> >>>> search results list so the data is there.
>
> >>>> Here is the code I use:
> >>>> @facets = ThinkingSphinx.facets params[:search], :all_facets =>
> >>>> true, :class_facet => false, :page => params[:page], :order
> >>>> => :created_at,  :sort_mode
> >>>> => :desc, :with=>{:search_access_tag=>@search_access_tags << 0}
>
> >>>> And the html:
> >>>> <% @facets.each do |facet, facet_options| %>
> >>>> <h3><%= facet.to_s[0..facet.to_s.length-6].humanize.titleize.pluralize
> >>>> %></h3>
> >>>> <ul>
> >>>>         <% facet_options.each do |option, count| %>
> >>>>                 <% next if option==nil or option=="" %>
> >>>>                 <li><%= link_to "#{option} (#{count})", :params => 
> >>>> {facet =>
> >>>> option, :search=>params[:search], :page => 1} %></li>
> >>>>         <% end %>
> >>>> </ul>
> >>>> <% end %>
>
> >>>> And then when you click on one of the links it takes you to
> >>>> if params[:project_category_name]
> >>>>     @search_results =
> >>>> @facets.for(:project_category_name=>params[:project_category_name].to_s)
> >>>> end
>
> >>>> What is the best approach in debugging this inconsistency in what is
> >>>> reported from the main facets call and the @facets.for returns?  Are
> >>>> there any known issues when using :all_facets?
>
> >>>> Warm regards,
> >>>> Robert
>
> > --
> > 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