Ah, I think you've got it - the bin_path setting hasn't come into play when ThinkingSphinx::Attribute is defined, and I'm pretty sure that's the problem.
I'll try to get a fix out in the next 24 hours - but your workaround looks pretty good in the meantime. Thanks for the help Timo :) -- Pat On 31/08/2011, at 4:22 PM, Timo Virkkala wrote: > Loading development environment (Rails 3.0.9) > irb(main):001:0> Riddle.loaded_version > => "2.0.1" > irb(main):002:0> Riddle.loaded_version.to_i > => 2 > > No problems there. I'm just wondering - Riddle seems to check the > loaded version by running the indexer binary. But at what time does it > load the bin_path from the configuration? Could it be that at the time > the SphinxTypeMappings map is built, the bin_path is not yet known? Or > does it maybe run the indexer at that point with a wrong path? > > -Timo > > On Wed, Aug 31, 2011 at 02:20, Pat Allan <[email protected]> wrote: >> Looks like it - can you check the value of Riddle.loaded_version in >> script/console? >> >> -- >> Pat >> >> On 30/08/2011, at 10:39 PM, Timo Virkkala wrote: >> >>> Hi, >>> >>> The problem persists with 2.0.7. >>> >>> I investigated further. The current monkey-patch I need to get things >>> working is: >>> >>> class ThinkingSphinx::Attribute >>> SphinxTypeMappings[:string] = :sql_attr_string >>> end >>> >>> So, it seems that setting that in ThinkingSphinx::Attribute somehow >>> fails. Normally the code in ThinkingSphinx::Attribute checks >>> Riddle.loaded_version.to_i > 1 and sets that if the result is true. >>> >>> Could it be that Riddle.loaded_version fails at that point? >>> >>> >>> -Timo >>> >>> >>> On Tue, Aug 30, 2011 at 13:44, Pat Allan <[email protected]> wrote: >>>> Right - the sphinx_internal_class shouldn't be sql_attr_str2ordinal, but >>>> sql_attr_string. That's the problem, but as for the cause... can you try >>>> the latest TS gem release instead of Github? v2.0.7 >>>> >>>> -- >>>> Pat >>>> >>>> On 30/08/2011, at 7:23 PM, Timo Virkkala wrote: >>>> >>>>> Hi, >>>>> >>>>> I'll try to create a minimal example and post that somewhere. >>>>> Meanwhile, some snippets from the current conf file: >>>>> >>>>> source brand_core_0 >>>>> { >>>>> [...] >>>>> sql_query = SELECT [...] 3717453404 AS `class_crc`, IFNULL('Brand', >>>>> '') AS `sphinx_internal_class` [...] >>>>> [...] >>>>> sql_attr_uint = class_crc >>>>> sql_attr_str2ordinal = sphinx_internal_class >>>>> [...] >>>>> } >>>>> >>>>> Is that what you were looking for? That's from a table which does not >>>>> have STI. One STI table has the following: >>>>> >>>>> source party_core_0 >>>>> { >>>>> [...] >>>>> sql_query = SELECT [...] CASE IFNULL(`parties`.`type`, '') WHEN >>>>> 'Person' THEN 863032384 WHEN 'Organization' THEN 3655317636 ELSE >>>>> 1213489636 END AS `class_crc`, IFNULL(`parties`.`type`, '') AS >>>>> `sphinx_internal_class` [...] >>>>> [...] >>>>> sql_attr_uint = class_crc >>>>> sql_attr_str2ordinal = sphinx_internal_class >>>>> [...] >>>>> } >>>>> >>>>> -Timo >>>>> >>>>> On Tue, Aug 30, 2011 at 11:58, Pat Allan <[email protected]> >>>>> wrote: >>>>>> Hi Timo >>>>>> >>>>>> Thanks for getting back to me. Can you share your >>>>>> development.sphinx.conf file in a gist or similar? Make sure you remove >>>>>> the database password from each source. >>>>>> >>>>>> -- >>>>>> Pat >>>>>> >>>>>> On 29/08/2011, at 7:50 PM, Timo Virkkala wrote: >>>>>> >>>>>>> Hi Pat, >>>>>>> >>>>>>> And thanks for the quick reply. Yeah, it happens in all environments. >>>>>>> We do have some STI with a column called 'type' in one table. But the >>>>>>> problem exists even when I limit indexing to only one of our models >>>>>>> (and remove the older index files), and that one doesn't have a column >>>>>>> called 'type'. >>>>>>> >>>>>>> -Timo >>>>>>> >>>>>>> -- >>>>>>> You received this message because you are subscribed to the Google >>>>>>> Groups "Thinking Sphinx" group. >>>>>>> To view this discussion on the web visit >>>>>>> https://groups.google.com/d/msg/thinking-sphinx/-/2ebUP3XjggEJ. >>>>>>> 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. >>>>>> >>>>>> -- >>>>>> 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. >>>>>> >>>>>> >>>>> >>>>> -- >>>>> 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. >>>>> >>>> >>>> -- >>>> 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. >>>> >>>> >>> >>> -- >>> 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. >>> >> >> -- >> 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. >> >> > > -- > 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. > -- 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.
