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.