Thanks for the update Pat.  We'll give 2.0.1 a try- cautiously ;)

My apps use MVA filtering extensively so the realtime index filtering
is definitely a non-starter at this point.

I use sphinx with delta indexing and delayed job.  We have upstart to
restart both sphinx and delayed job if necessary.  The data sets for
my clients are small enough that I can run a full reindex every hour
across each client server.

Are you aware of any issues that can arise with delta indices if you
don't regularly run a full index?  The one inexplicable problem I've
had is if I don't reindex every hour- it seems that we eventually see
inconsistencies where the delta indexing stops.

Also I run a functional check via a webservice on each server every 15
minutes to make sure sphinx is running.  I basically update a record
then try to search for the record with an attribute and confirm that I
see the result.  I also have a check to see if the # of results for
several commonly used models is above a certain threshold.  I had a
production issue once where sphinx had been restarted with a new
configuration file but not the application. Sphinx continued to work,
but periodically returned zero results for a model that had records.
It was hard to track down because it repro'd sporadically.

This is the monitoring routine that I run:

  def run_test_on url
    http_response = ''
    begin
      ts_i = Time.now.to_i
      HTTPI.put("#{url}/sphinx_checks/1?
sphinx_check[check_ts]=#{ts_i}")
      sleep(2)

      response = HTTPI.get("#{url}/sphinx_checks.json?
check_ts=#{ts_i}")
      http_response = response.body
      response_json = ActiveSupport::JSON.decode http_response
      updated_ts = response_json['SphinxCheck'].first['check_ts']

      unless updated_ts.to_s == ts_i.to_s
        raise Exception.new("Error trying to run update url=#{url},
http_response=#{http_response}, checked #{ts_i}")
      end

      # Tell sphinx check to check any models that need checking
      response = HTTPI.get("#{url}/sphinx_checks/1.json?
check_models=1")
      http_response = response.body
      response_json = ActiveSupport::JSON.decode http_response
      unless response_json.empty?
        raise Exception.new("Error trying to run check_models
url=#{url}, got response=#{http_response} - at #{ts_i}")
      end
    rescue Exception => e
      HoptoadNotifier.notify(
        :error_message => "Got an error against #{url}: #{e.inspect},
http_response=#{http_response}",
        :backtrace    => e.backtrace
      )

    end
  end


I'm going to add an insert/delete as well.

--> Eric

On Aug 28, 1:04 pm, Pat Allan <[email protected]> wrote:
> Hi Eric
>
> I've used 2.0.1 locally (and it's supported in recent releases of TS/Riddle), 
> but not yet on production. I haven't heard of it being unstable, mind you, so 
> I'd recommend giving it a shot. I'm pretty sure others are using it without 
> issues.
>
> As for realtime indices, TS doesn't currently support that. It requires 
> significant changes, and I've started toying with a rewrite, but that's not 
> going to appear in the near future. The realtime indices are missing some 
> pretty key features anyway - such as prefix/infix indexing and possibly 
> morphologies/stemming and charset tables. Multi-value attributes for realtime 
> indices aren't part of the 2.0.1 release either (they are supported in recent 
> commits though).
>
> So, all said - I reckon give 2.0.1 a shot, but you won't get the benefits of 
> realtime indices any time soon.
>
> --
> Pat
>
> On 28/08/2011, at 8:52 PM, Eric wrote:
>
>
>
>
>
>
>
> > Have folks migrated to Sphinx 2.0.1 yet?  I'm wondering if anybody has
> > production experience.  I've been using Sphinx 0.9.9-release (r2117)
> > with good success for some time now but never saw a more recent
> > production release.
>
> > I know there are some new realtime indexing features that look very
> > attractive as an alternative to delta indices, also wondering if there
> > is a reasonable way to use that with thinking sphinx.
>
> > Thanks!
> > Eric
>
> > --
> > 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