freelancing-god / ts-datetime-delta
- Source
- Commits
- Network (2)
- Issues (0)
- Downloads (0)
- Wiki (1)
- Graphs
-
Branch:
master
| name | age | message | |
|---|---|---|---|
| |
.gitignore | Mon Nov 02 23:17:42 -0800 2009 | |
| |
LICENSE | Mon Nov 02 23:17:42 -0800 2009 | |
| |
README.textile | Mon Nov 02 23:17:42 -0800 2009 | |
| |
Rakefile | Mon Nov 02 23:17:42 -0800 2009 | |
| |
VERSION | Wed Dec 02 16:42:00 -0800 2009 | |
| |
features/ | Wed Dec 02 16:40:13 -0800 2009 | |
| |
lib/ | Wed Dec 02 16:40:42 -0800 2009 | |
| |
spec/ | Wed Dec 02 16:40:13 -0800 2009 | |
| |
tasks/ | Wed Dec 02 16:42:00 -0800 2009 | |
| |
ts-datetime-delta.gemspec | Wed Dec 02 16:42:00 -0800 2009 |
Datetime Deltas for Thinking Sphinx
Installation
You’ll need Thinking Sphinx 1.3.0 or later.
gem install ts-datetime-delta --source http://gemcutter.org
In your environment.rb file, with the rest of your gem dependencies:
config.gem 'ts-datetime-delta',
:lib => 'thinking_sphinx/deltas/datetime_delta'
:version => '>= 1.0.0',
:source => 'http://gemcutter.org'
And add the following line to the bottom of your Rakefile:
require 'thinking_sphinx/deltas/datetime_delta/tasks'
Usage
For the indexes you want to use this delta approach, make sure you set that up in their define_index blocks.
define_index do
# ...
set_property :delta => :datetime
end
If you want to use a column other than updated_at, you can specify it using the :delta_column option. The same goes for the threshold, which defaults to one day.
set_property :delta => :datetime,
:threshold => 1.hour,
:delta_column => :changed_at
Then, while your Rails application is running, you’ll need to run the delta indexing rake task regularly – as often as your threshold, allowing for some time for the indexing to actually happen.
For example, if you’re going to run the delta indexing task every hour, I would recommend setting your threshold to 70 minutes.
To ensure this rake task is called regularly, it’s best to set it up as a recurring task via cron or similar tools.
rake thinking_sphinx:index:delta
The shorthand version is:
rake ts:in:delta
Copyright
Copyright © 2009 Pat Allan, and released under an MIT Licence.
