From 7379daad1c73bd3610ed296436250b417ac3673d Mon Sep 17 00:00:00 2001 From: hukl Date: Thu, 10 Feb 2011 14:19:00 +0100 Subject: removed thinking_sphinx plugin and replaced it with gem. also tuned dependencies --- .../lib/thinking_sphinx/deltas/datetime_delta.rb | 50 ---------------- .../lib/thinking_sphinx/deltas/default_delta.rb | 67 ---------------------- .../lib/thinking_sphinx/deltas/delayed_delta.rb | 25 -------- .../deltas/delayed_delta/delta_job.rb | 24 -------- .../deltas/delayed_delta/flag_as_deleted_job.rb | 27 --------- .../thinking_sphinx/deltas/delayed_delta/job.rb | 26 --------- 6 files changed, 219 deletions(-) delete mode 100644 vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/datetime_delta.rb delete mode 100644 vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/default_delta.rb delete mode 100644 vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/delayed_delta.rb delete mode 100644 vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/delayed_delta/delta_job.rb delete mode 100644 vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/delayed_delta/flag_as_deleted_job.rb delete mode 100644 vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/delayed_delta/job.rb (limited to 'vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas') diff --git a/vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/datetime_delta.rb b/vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/datetime_delta.rb deleted file mode 100644 index 2ee46d41..00000000 --- a/vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/datetime_delta.rb +++ /dev/null @@ -1,50 +0,0 @@ -module ThinkingSphinx - module Deltas - class DatetimeDelta < ThinkingSphinx::Deltas::DefaultDelta - attr_accessor :column, :threshold - - def initialize(index, options) - @index = index - @column = options.delete(:delta_column) || :updated_at - @threshold = options.delete(:threshold) || 1.day - end - - def index(model, instance = nil) - # do nothing - true - end - - def delayed_index(model) - config = ThinkingSphinx::Configuration.instance - rotate = ThinkingSphinx.sphinx_running? ? "--rotate" : "" - - output = `#{config.bin_path}indexer --config #{config.config_file} #{rotate} #{delta_index_name model}` - output += `#{config.bin_path}indexer --config #{config.config_file} #{rotate} --merge #{core_index_name model} #{delta_index_name model} --merge-dst-range sphinx_deleted 0 0` - puts output unless ThinkingSphinx.suppress_delta_output? - - true - end - - def toggle(instance) - # do nothing - end - - def toggled(instance) - instance.send(@column) > @threshold.ago - end - - def reset_query(model) - nil - end - - def clause(model, toggled) - if toggled - "#{model.quoted_table_name}.#{@index.quote_column(@column.to_s)}" + - " > #{adapter.time_difference(@threshold)}" - else - nil - end - end - end - end -end diff --git a/vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/default_delta.rb b/vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/default_delta.rb deleted file mode 100644 index c9736120..00000000 --- a/vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/default_delta.rb +++ /dev/null @@ -1,67 +0,0 @@ -module ThinkingSphinx - module Deltas - class DefaultDelta - attr_accessor :column - - def initialize(index, options) - @index = index - @column = options.delete(:delta_column) || :delta - end - - def index(model, instance = nil) - return true unless ThinkingSphinx.updates_enabled? && - ThinkingSphinx.deltas_enabled? - return true if instance && !toggled(instance) - - config = ThinkingSphinx::Configuration.instance - client = Riddle::Client.new config.address, config.port - rotate = ThinkingSphinx.sphinx_running? ? "--rotate" : "" - - output = `#{config.bin_path}indexer --config #{config.config_file} #{rotate} #{delta_index_name model}` - puts(output) unless ThinkingSphinx.suppress_delta_output? - - client.update( - core_index_name(model), - ['sphinx_deleted'], - {instance.sphinx_document_id => [1]} - ) if instance && ThinkingSphinx.sphinx_running? && instance.in_both_indexes? - - true - end - - def toggle(instance) - instance.delta = true - end - - def toggled(instance) - instance.delta - end - - def reset_query(model) - "UPDATE #{model.quoted_table_name} SET " + - "#{@index.quote_column(@column.to_s)} = #{adapter.boolean(false)}" - end - - def clause(model, toggled) - "#{model.quoted_table_name}.#{@index.quote_column(@column.to_s)}" + - " = #{adapter.boolean(toggled)}" - end - - protected - - def core_index_name(model) - "#{model.source_of_sphinx_index.name.underscore.tr(':/\\', '_')}_core" - end - - def delta_index_name(model) - "#{model.source_of_sphinx_index.name.underscore.tr(':/\\', '_')}_delta" - end - - private - - def adapter - @adapter = @index.model.sphinx_database_adapter - end - end - end -end diff --git a/vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/delayed_delta.rb b/vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/delayed_delta.rb deleted file mode 100644 index e95298b6..00000000 --- a/vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/delayed_delta.rb +++ /dev/null @@ -1,25 +0,0 @@ -require 'delayed/job' - -require 'thinking_sphinx/deltas/delayed_delta/delta_job' -require 'thinking_sphinx/deltas/delayed_delta/flag_as_deleted_job' -require 'thinking_sphinx/deltas/delayed_delta/job' - -module ThinkingSphinx - module Deltas - class DelayedDelta < ThinkingSphinx::Deltas::DefaultDelta - def index(model, instance = nil) - ThinkingSphinx::Deltas::Job.enqueue( - ThinkingSphinx::Deltas::DeltaJob.new(delta_index_name(model)) - ) - - Delayed::Job.enqueue( - ThinkingSphinx::Deltas::FlagAsDeletedJob.new( - core_index_name(model), instance.sphinx_document_id - ) - ) if instance - - true - end - end - end -end diff --git a/vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/delayed_delta/delta_job.rb b/vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/delayed_delta/delta_job.rb deleted file mode 100644 index f9511ecd..00000000 --- a/vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/delayed_delta/delta_job.rb +++ /dev/null @@ -1,24 +0,0 @@ -module ThinkingSphinx - module Deltas - class DeltaJob - attr_accessor :index - - def initialize(index) - @index = index - end - - def perform - return true unless ThinkingSphinx.updates_enabled? && - ThinkingSphinx.deltas_enabled? - - config = ThinkingSphinx::Configuration.instance - client = Riddle::Client.new config.address, config.port - - output = `#{config.bin_path}indexer --config #{config.config_file} --rotate #{index}` - puts output unless ThinkingSphinx.suppress_delta_output? - - true - end - end - end -end diff --git a/vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/delayed_delta/flag_as_deleted_job.rb b/vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/delayed_delta/flag_as_deleted_job.rb deleted file mode 100644 index d6afd27b..00000000 --- a/vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/delayed_delta/flag_as_deleted_job.rb +++ /dev/null @@ -1,27 +0,0 @@ -module ThinkingSphinx - module Deltas - class FlagAsDeletedJob - attr_accessor :index, :document_id - - def initialize(index, document_id) - @index, @document_id = index, document_id - end - - def perform - return true unless ThinkingSphinx.updates_enabled? - - config = ThinkingSphinx::Configuration.instance - client = Riddle::Client.new config.address, config.port - - client.update( - @index, - ['sphinx_deleted'], - {@document_id => [1]} - ) if ThinkingSphinx.sphinx_running? && - ThinkingSphinx::Search.search_for_id(@document_id, @index) - - true - end - end - end -end \ No newline at end of file diff --git a/vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/delayed_delta/job.rb b/vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/delayed_delta/job.rb deleted file mode 100644 index de0a7cb5..00000000 --- a/vendor/plugins/thinking-sphinx/lib/thinking_sphinx/deltas/delayed_delta/job.rb +++ /dev/null @@ -1,26 +0,0 @@ -module ThinkingSphinx - module Deltas - class Job < Delayed::Job - def self.enqueue(object, priority = 0) - super unless duplicates_exist(object) - end - - def self.cancel_thinking_sphinx_jobs - if connection.tables.include?("delayed_jobs") - delete_all("handler LIKE '--- !ruby/object:ThinkingSphinx::Deltas::%'") - end - end - - private - - def self.duplicates_exist(object) - count( - :conditions => { - :handler => object.to_yaml, - :locked_at => nil - } - ) > 0 - end - end - end -end -- cgit v1.3