# File lib/thinking_sphinx/configuration.rb, line 88
    def reset(custom_app_root=nil)
      if custom_app_root
        self.app_root = custom_app_root
      else
        self.app_root          = RAILS_ROOT if defined?(RAILS_ROOT)
        self.app_root          = Merb.root  if defined?(Merb)
        self.app_root        ||= app_root
      end
      
      @configuration = Riddle::Configuration.new
      @configuration.searchd.pid_file   = "#{self.app_root}/log/searchd.#{environment}.pid"
      @configuration.searchd.log        = "#{self.app_root}/log/searchd.log"
      @configuration.searchd.query_log  = "#{self.app_root}/log/searchd.query.log"
      
      @controller = Riddle::Controller.new @configuration,
        "#{self.app_root}/config/#{environment}.sphinx.conf"
      
      self.address              = "127.0.0.1"
      self.port                 = 9312
      self.database_yml_file    = "#{self.app_root}/config/database.yml"
      self.searchd_file_path    = "#{self.app_root}/db/sphinx/#{environment}"
      self.allow_star           = false
      self.model_directories    = ["#{app_root}/app/models/"] +
        Dir.glob("#{app_root}/vendor/plugins/*/app/models/")
      self.delayed_job_priority = 0
      self.indexed_models       = []
      
      self.source_options  = {}
      self.index_options   = {
        :charset_type => "utf-8"
      }
      
      self.version = nil
      parse_config
      self.version ||= @controller.sphinx_version
      
      self
    end