Did that, but the delta job is still enqueued.

Here's the update statement:

UPDATE `users` SET `updated_at` = '2010-06-19 23:50:22',
`perishable_token` = 'tQ53TKnXFsW05TvjPJg5', `last_login_at` =
'2010-06-19 15:04:48', `current_login_at` = '2010-06-19 23:50:22',
`login_count` = 121 WHERE `id` = 36

And the index definition:

  define_index do
    # fields
    indexes username, :sortable => true
    indexes index_email, :sortable => true
    indexes [first_name, last_name], :as => :full_name, :sortable =>
true

    # weights
    set_property :field_weights => {"username" => 100, "full_name" =>
100, "index_email" => 50}

    # conditions
    where "active = 1"

    # delta
    set_property :delta => :delayed
  end


On Jun 19, 1:35 pm, Pat Allan <[email protected]> wrote:
> The issue here is your full_name field. You can merge columns together 
> automatically:
>
>  indexes [first_name, last_name], :as => :full_name, :sortable => true
>
> See if that fixes the unnecessary delta issue.
>
> Cheers
>
> --
> Pat
>
> On 20/06/2010, at 12:27 AM, Lucas Húngaro wrote:
>
>
>
> > Hi Pat, here's the block:
>
> > define_index do
> >   # fields
> >   indexes username, :sortable => true
> >   indexes index_email, :sortable => true
> >   indexes "concat(first_name, ' ', last_name)", :as
> > => :full_name, :sortable => true
>
> >   # weights
> >   set_property :field_weights => {"username" => 100, "full_name" =>
> > 100, "email" => 50}
>
> >   # conditions
> >   where "active = 1"
>
> >   # delta
> >   set_property :delta => :delayed
> > end
>
> > On Jun 19, 5:45 am, Pat Allan <[email protected]> wrote:
> >> Hi Lucas
>
> >> Thinking Sphinx actually tries to be this smart, but it really depends on 
> >> the index definition - if there are fields or attributes where TS cannot 
> >> figure out if they've changed (if you're using Rails 2.0 or earlier, or if 
> >> you have SQL snippets for fields or attributes), then it just assumes the 
> >> delta update is required.
>
> >> What does your User model's define_index block look like?
>
> >> --
> >> Pat
>
> >> On 19/06/2010, at 4:14 PM, Lucas Húngaro wrote:
>
> >>> Hi there.
>
> >>> I'm using a delta index with delayed_job but a new indexing job is
> >>> enqueued on every update of a record, no matter if the column is
> >>> indexed or not. How can I configure TS to update the delta attribute
> >>> only in case of changes on the indexed columns?
>
> >>> Example: every time someone signs in, the app increments a column
> >>> called login_count on the user record. This column is irrelevant for
> >>> searching purposes and it's not being indexed, but triggers a delta
> >>> update anyway.
>
> >>> Thanks.
>
> >>> --
> >>> 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.

Reply via email to