# Updating ultrasphinx index after save?

**URL:** <https://www.ruby-forum.com/t/updating-ultrasphinx-index-after-save/149520>\
**Category:** Rails\
**Created:** [September 25, 2008, 7:01pm UTC](https://www.ruby-forum.com/t/updating-ultrasphinx-index-after-save/149520 "2008-09-25T19:01:00Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![temesta](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/e9bcb4/32.png) [@temesta](https://www.ruby-forum.com/u/temesta)\
**Post date:** [September 25, 2008, 7:01pm UTC](https://www.ruby-forum.com/t/updating-ultrasphinx-index-after-save/149520/1 "2008-09-25T19:01:00Z")

</div>

Hi,

I’m trying out Ultrasphinx instead of ferret. Unfortunately it seems not  
to be possible to update the index (in an efficient way) after creating  
or updating a record. I managed to run the update index rake task, but  
that’s not a good option.

Here is what I tried:

def update  
@user = User.find params[:id]  
@user.language = $activelanguage  
@user.add\_usercategories params[:selectedusercategories] if  
params[:selectedusercategories]  
@user.updated\_at = Time.now

```
respond_to do |format|
  if @user.update_attributes(params[:user])
    require 'rake'
    require 'rake/testtask'
    require 'rake/rdoctask'
    require 'tasks/rails'
    Rake::Task["ultrasphinx:index:main"].invoke

```

…  
end

= BAD 🙂 . Is there a better way to this? Maby with the delta index?

Thanks

---

<div class="post-metadata">

**Author:** ![temesta](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/e9bcb4/32.png) [@temesta](https://www.ruby-forum.com/u/temesta)\
**Post date:** [September 25, 2008, 7:03pm UTC](https://www.ruby-forum.com/t/updating-ultrasphinx-index-after-save/149520/2 "2008-09-25T19:03:37Z")

</div>

If you really need index updates to happen when a record is updated,  
you should use Solr.

On Thu, Sep 25, 2008 at 2:01 PM, Maarten P.  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> def update  
> require ‘rake/rdoctask’
> 
> >

–  
Maurício Linhares  
[http://alinhavado.wordpress.com/](http://alinhavado.wordpress.com/) (pt-br) | [http://blog.codevader.com/](http://blog.codevader.com/)  
(en)  
João Pessoa, PB, +55 83 8867-7208

---

<div class="post-metadata">

**Author:** ![temesta](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/e9bcb4/32.png) [@temesta](https://www.ruby-forum.com/u/temesta)\
**Post date:** [September 25, 2008, 7:11pm UTC](https://www.ruby-forum.com/t/updating-ultrasphinx-index-after-save/149520/3 "2008-09-25T19:11:18Z")

</div>

Thanks MaurÃ­cio,

Ok, I’ll also give it a shot 🙂 … Damn, I’ve now tried Ferret -  
Ultrasphinx … and now Solr 🙂 . Madness. Actually I kind of liked  
Ultrasphinx.
