Okay, there's been another update...

Current status:
-> With config.cache_classes = true
1. Fixed
2. Can't reproduce
-> With config.cache_classes = false
1. Can't reproduce
2. All fine.

It's possible that in fixing the nil.local_options issue, I've fixed  
others. If you could give it a spin, that'd be great.

Also, one thing you might want to change in your index definition:
   indexes customer.contact_name, customer.company_name, :as  
=> :customer_name
To:
   indexes [customer.contact_name, customer.company_name], :as  
=> :customer_name

You were creating two fields with the same name, and I'm not sure how  
Sphinx handles that. My change combines the two columns into a single  
field called customer_name.

-- 
Pat

On 29/11/2009, at 1:14 AM, karmacoma wrote:

> Hi,
> I have thinking-sphinx installed as a vendor/plugin.
>
> My index definition for looks like:
>
> ===
> define_index do
>  # Fields
>  #
>  indexes :id, :as => :order_id
>  indexes customer.account_ref
>  indexes customer.contact_name, customer.company_name, :as
> => :customer_name
>  indexes line_items.code
>  indexes line_items.name
>
>  # Attributes
>  #
>  has :status_code
>
>  # Properties
>  #
>  set_property :delta => true
> end
> ===
>
> Here is what I have be able to establish so far.
> Note: I'm testing all of this in development mode.
>
> -> With config.cache_classes = true
>
> 1. If I perform a search, destroy a record within the results, re-
> perform the same search.
> I still get the same "nil.local_options" error as described in my
> previous email.
>
> 2. I am unable to rotate my indexes using rake ts:index.
>
> -> With config.cache_classes = false
>
> 1. If I perform a search, destroy a record within the results, re-
> perform the same search.
> I get a RuntimeError: "Called id for nil, which would mistakenly be 4"
>
> 2. I am able to rotate my indexes.
>
> Thanks for your efforts.
> Kind regards, Oliver.
>
> On Nov 28, 1:40 pm, Pat Allan <[email protected]> wrote:
>> Hmm, I can't seem to reproduce the indexing issue...
>>
>> How do you have TS installed? (gem or plugin) And what's your index
>> definition looking like in Order?
>>
>> --
>> Pat
>>
>> On 28/11/2009, at 11:23 PM, karmacoma wrote:
>>
>>> Hi Pat,
>>
>>> Okay, deleting a record now works (which is great!).
>>> However, now I suffering a slightly different problem.
>>
>>> If I perform a search; Destroy one of the records within the  
>>> results;
>>> Then re-perform the search.
>>> I now get the following error:
>>
>>> ===
>>> "You have a nil object when you didn't expect it!
>>> The error occurred while evaluating nil.local_options"
>>> ===
>>
>>> With the stack trace leading me to: thinking-sphinx/lib/
>>> thinking_sphinx/search.rb:310:in `client'.
>>
>>> Secondly, I am unable to re-index my records, as I get the following
>>> error when I issue rake ts:index:
>>
>>> ===
>>> Generating Configuration to /Users/Oliver/git/greyville/config/
>>> development.sphinx.conf
>>> Sphinx 0.9.8.1-release (r1533)
>>> Copyright (c) 2001-2008, Andrew Aksyonoff
>>
>>> using config file '/Users/Oliver/git/greyville/config/
>>> development.sphinx.conf'...
>>> ERROR: section 'order_core_0' (type='source') already exists in /
>>> Users/
>>> Oliver/git/greyville/config/development.sphinx.conf line 75 col 1.
>>> ===
>>
>>> Kind regards, Oliver.
>>
>>> On 28 Nov, 11:40, Pat Allan <[email protected]> wrote:
>>>> Hi Oliver
>>
>>>> Can you give the latest release (1.3.7) a shot? It should fix this
>>>> problem.
>>
>>>> --
>>>> Pat
>>
>>>> On 28/11/2009, at 8:31 PM, karmacoma wrote:
>>
>>>>> Hi Pat,
>>
>>>>> I am using rails version 2.3.4.
>>
>>>>> Starting a debugger just before: thinking-sphinx/lib/
>>>>> thinking_sphinx/
>>>>> active_record.rb:83
>>>>> I can see the list of indexed models being gathered as script/ 
>>>>> server
>>>>> boots up.
>>
>>>>> Then if I place a breakpoint just before: vendor/plugins/thinking-
>>>>> sphinx/lib/thinking_sphinx.rb:63
>>>>> Upon hitting the first request, Thread.current
>>>>> [:thinking_sphinx_indexed_models] returns nil.
>>
>>>>> I am using the following version of ruby in development:
>>>>> - ruby 1.8.7 (2009-06-12 patchlevel 174) [i686-darwin10]
>>
>>>>> And in production:
>>>>> - ruby 1.8.6 (2007-09-24 patchlevel 111) [i486-linux]
>>
>>>>> Hope this helps...
>>
>>>>> Kind regards, Oliver Beddows.
>>
>>>>> On 28 Nov, 02:05, Pat Allan <[email protected]> wrote:
>>>>>> Hi Oliver
>>
>>>>>> I'm kinda surprised by this - I thought that array was being
>>>>>> populated
>>>>>> at the beginning of each web request in the dev environment, but
>>>>>> just
>>>>>> so I can track it down... what version of Rails are you using?
>>
>>>>>> --
>>>>>> Pat
>>
>>>>>> On 28/11/2009, at 4:21 AM, karmacoma wrote:
>>
>>>>>>> Hi,
>>>>>>> Using the latest version of thinking-sphinx (1.3.6). I am  
>>>>>>> getting
>>>>>>> the
>>>>>>> following error: "undefined method `name' for nil:NilClass" when
>>>>>>> destroying a record.
>>
>>>>>>> The stack trace leads me to the following file: thinking-sphinx/
>>>>>>> lib/
>>>>>>> thinking_sphinx/active_record.rb:229
>>
>>>>>>> def eldest_indexed_ancestor
>>>>>>>  ancestors.reverse.detect { |ancestor|
>>>>>>>    ThinkingSphinx.indexed_models.include?(ancestor.name)
>>>>>>>  }.name
>>>>>>> end
>>
>>>>>>> When the destroy method is called,  
>>>>>>> "ThinkingSphinx.indexed_models"
>>>>>>> returns an empty array.
>>
>>>>>>> However, according to my application it should be returning:
>>>>>>> ["Administrator", "Article", "Customer", "Order", "Product",
>>>>>>> "Representative"].
>>
>>>>>>> * Within production it raises the exception every time  
>>>>>>> (obviously,
>>>>>>> as
>>>>>>> the classes are cached).
>>>>>>> * Within development it raises this exception on the first
>>>>>>> invocation,
>>>>>>> but works on the second attempt, and subsequent attempts.
>>
>>>>>>> This seems to be an issue related to lazy loading?
>>
>>>>>>> In my application I often have to delete records. So I am hoping
>>>>>>> someone can help me fix this problem.
>>
>>>>>>> Kind regards, Oliver Beddows.
>>
>>>>>>> --
>>
>>>>>>> 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 
> .
>
>

--

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