pat / thinking-sphinx

Sphinx/Manticore plugin for ActiveRecord/Rails
http://freelancing-gods.com/thinking-sphinx
MIT License
1.63k stars 468 forks source link

Generate config file fails with Riddle 1.5.0 #301

Closed Shinta closed 12 years ago

Shinta commented 12 years ago

Hello,

I just updated all my gems to tests some stemming with TS, and Riddle updated too, to 1.5.0 and when I run rake ts:config:

** Invoke ts:config (first_time)
** Invoke thinking_sphinx:configure (first_time)
** Invoke thinking_sphinx:app_env (first_time)
** Execute thinking_sphinx:app_env
** Execute thinking_sphinx:configure
Generating Configuration to /var/www/html/www.yagua.com/config/development.sphinx.conf
rake aborted!
undefined method `indexes' for #<Riddle::Configuration:0x97c15c4>
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/thinking-sphinx-2.0.9/lib/thinking_sphinx/configuration.rb:154:in `generate'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/thinking-sphinx-2.0.9/lib/thinking_sphinx/configuration.rb:172:in `build'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/thinking-sphinx-2.0.9/lib/thinking_sphinx/tasks.rb:80:in `block (2 levels) in <top (required)>'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/lib/rake/task.rb:205:in `call'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/lib/rake/task.rb:205:in `block in execute'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/lib/rake/task.rb:200:in `each'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/lib/rake/task.rb:200:in `execute'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/lib/rake/task.rb:158:in `block in invoke_with_call_chain'
/usr/local/rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/lib/rake/task.rb:151:in `invoke_with_call_chain'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/lib/rake/task.rb:176:in `block in invoke_prerequisites'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/lib/rake/task.rb:174:in `each'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/lib/rake/task.rb:174:in `invoke_prerequisites'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/lib/rake/task.rb:157:in `block in invoke_with_call_chain'
/usr/local/rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/lib/rake/task.rb:151:in `invoke_with_call_chain'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/lib/rake/task.rb:144:in `invoke'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/lib/rake/application.rb:116:in `invoke_task'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `block (2 levels) in top_level'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `each'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `block in top_level'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/lib/rake/application.rb:88:in `top_level'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/lib/rake/application.rb:66:in `block in run'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/lib/rake/application.rb:63:in `run'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/gems/rake-0.9.2.2/bin/rake:33:in `<top (required)>'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/bin/rake:19:in `load'
/usr/local/rvm/gems/ruby-1.9.2-p290@rails.3.0/bin/rake:19:in `<main>'
Tasks: TOP => ts:config => thinking_sphinx:configure

With Riddle 1.4.0 there is no problem.

I don't know if this issue goes to Riddle Issue list or here, sorry if I'm mistaken.

Hugs.

pat commented 12 years ago

Yup, you'll need to update to 2.0.10 (which was released 25 minutes ago). Looks like you must have just got caught between the Riddle update and the TS update :)

Shinta commented 12 years ago

Your were right, updated, working. :)

Thanks Pat.

tjoneseng commented 12 years ago

I still get this error with version 1.4.10.

Shinta commented 12 years ago

@barbarycodes you have to install Thinking Sphinx 2.0.10 to fix this problem, it's a TS's issue not Riddle, or I'm writing bullshit and Pat will correct me.

tjoneseng commented 12 years ago

My app is still on Rails 2.x for the moment, so TS 2.x is not an option.

Shinta commented 12 years ago

So the answer is to go down to Riddle 1.4.0

pat commented 12 years ago

I've tested this with TS 1.4.10 and Riddle 1.5.0 and it works for me. @barbarycodes: do you have any other versions of TS installed? Especially newer versions? The rake tasks for those might be getting loaded instead.

tjoneseng commented 12 years ago

It looks like the error is coming from ts-resque-delta. Did every delta plugin break with this change to Riddle?

letronje commented 12 years ago

I'm getting the exact same error

Stacktrace & Gemfile.lock below :

Stacktrace :

rake ts:rebuild --trace (11-09 12:54) /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/systemu-2.2.0/lib/systemu.rb:29: Use RbConfig instead of obsolete and deprecated Config. /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/activesupport-3.0.9/lib/active_support/dependencies.rb:239:in block in require': iconv will be deprecated in the future, use String#encode instead. ** Invoke ts:rebuild (first_time) ** Invoke thinking_sphinx:rebuild (first_time) ** Invoke thinking_sphinx:app_env (first_time) ** Execute thinking_sphinx:app_env ** Execute thinking_sphinx:rebuild ** Invoke thinking_sphinx:stop (first_time) ** Invoke thinking_sphinx:app_env ** Execute thinking_sphinx:stop Stopped search daemon (pid 2119). ** Invoke thinking_sphinx:index (first_time) ** Invoke thinking_sphinx:app_env ** Invoke thinking_sphinx:lock_deltas (first_time) ** Execute thinking_sphinx:lock_deltas rake aborted! undefined methodindexes' for #Riddle::Configuration:0x9797198 /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/ts-resque-delta-1.1.1/lib/thinking_sphinx/deltas/resque_delta/tasks.rb:10:in sphinx_indexes' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/ts-resque-delta-1.1.1/lib/thinking_sphinx/deltas/resque_delta/tasks.rb:30:inblock (2 levels) in <top (required)>' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:205:in call' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:205:inblock in execute' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:200:in each' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:200:inexecute' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:158:in block in invoke_with_call_chain' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/monitor.rb:211:inmon_synchronize' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:151:in invoke_with_call_chain' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:176:inblock in invoke_prerequisites' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:174:in each' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:174:ininvoke_prerequisites' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:157:in block in invoke_with_call_chain' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/monitor.rb:211:inmon_synchronize' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:151:in invoke_with_call_chain' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:144:ininvoke' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/gems/1.9.1/gems/thinking-sphinx-2.0.10/lib/thinking_sphinx/tasks.rb:107:in block (2 levels) in <top (required)>' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:205:incall' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:205:in block in execute' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:200:ineach' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:200:in execute' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:158:inblock in invoke_with_call_chain' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/monitor.rb:211:in mon_synchronize' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:151:ininvoke_with_call_chain' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:176:in block in invoke_prerequisites' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:174:ineach' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:174:in invoke_prerequisites' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:157:inblock in invoke_with_call_chain' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/monitor.rb:211:in mon_synchronize' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:151:ininvoke_with_call_chain' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/task.rb:144:in invoke' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/application.rb:116:ininvoke_task' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/application.rb:94:in block (2 levels) in top_level' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/application.rb:94:ineach' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/application.rb:94:in block in top_level' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/application.rb:133:instandard_exception_handling' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/application.rb:88:in top_level' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/application.rb:66:inblock in run' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/application.rb:133:in standard_exception_handling' /home/letronje/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rake/application.rb:63:inrun' /home/letronje/.rbenv/versions/1.9.3-p0/bin/rake:32:in `

' Tasks: TOP => thinking_sphinx:index => thinking_sphinx:lock_deltas

Gemfile.lock:

GEM remote: http://rubygems.org/ specs: abstract (1.0.0) actionmailer (3.0.9) actionpack (= 3.0.9) mail (~> 2.2.19) actionpack (3.0.9) activemodel (= 3.0.9) activesupport (= 3.0.9) builder (~> 2.1.2) erubis (~> 2.6.6) i18n (~> 0.5.0) rack (~> 1.2.1) rack-mount (~> 0.6.14) rack-test (~> 0.5.7) tzinfo (~> 0.3.23) activemodel (3.0.9) activesupport (= 3.0.9) builder (~> 2.1.2) i18n (~> 0.5.0) activerecord (3.0.9) activemodel (= 3.0.9) activesupport (= 3.0.9) arel (~> 2.0.10) tzinfo (~> 0.3.23) activeresource (3.0.9) activemodel (= 3.0.9) activesupport (= 3.0.9) activesupport (3.0.9) annotate (2.4.0) arel (2.0.10) authlogic (3.0.3) activerecord (>= 3.0.7) activerecord (>= 3.0.7) awesome_print (0.4.0) babosa (0.3.5) bdb (0.2.6.5) tuple (>= 0.1.2) bson (1.4.0) bson_ext (1.4.0) builder (2.1.2) central_logger (0.3.3) bson_ext bundler mongo rake cocaine (0.2.0) declarative_authorization (0.5.3) erubis (2.6.6) abstract (>= 1.0.0) faker (1.0.1) i18n (~> 0.4) friendly_id (3.2.1.1) babosa (~> 0.3.0) httpclient (2.2.1) i18n (0.5.0) jquery-rails (1.0.14) railties (~> 3.0) thor (~> 0.14) kaminari (0.12.4) rails (>= 3.0.0) macaddr (1.4.0) systemu (~> 2.2.0) mail (2.2.19) activesupport (>= 2.3.6) i18n (>= 0.4.0) mime-types (~> 1.16) treetop (~> 1.4.8) metaclass (0.0.1) mime-types (1.16) mocha (0.10.0) metaclass (~> 0.0.1) mongo (1.4.0) bson (= 1.4.0) multi_json (1.0.3) mysql2 (0.2.13) nifty-generators (0.4.6) nokogiri (1.5.0) polyglot (0.3.2) rack (1.2.4) rack-mount (0.6.14) rack (>= 1.0.0) rack-test (0.5.7) rack (>= 1.0) rails (3.0.9) actionmailer (= 3.0.9) actionpack (= 3.0.9) activerecord (= 3.0.9) activeresource (= 3.0.9) activesupport (= 3.0.9) bundler (~> 1.0) railties (= 3.0.9) rails3-generators (0.17.4) railties (>= 3.0.0) railties (3.0.9) actionpack (= 3.0.9) activesupport (= 3.0.9) rake (>= 0.8.7) rdoc (~> 3.4) thor (~> 0.14.4) rake (0.9.2) random-word (1.2.0) rdoc (3.9.4) recaptcha (0.3.1) redis (2.2.2) redis-namespace (1.0.3) redis (< 3.0.0) redis-objects (0.5.2) redis (>= 2.1.1) redis-store (1.0.0.1) redis (~> 2.2.1) resque (1.19.0) multi_json (~> 1.0) redis-namespace (~> 1.0.2) sinatra (>= 0.9.2) vegas (~> 0.1.2) resque-lock-timeout (0.3.1) resque (>= 1.8.0) resque-scheduler (1.9.9) redis (>= 2.0.1) resque (>= 1.8.0) rufus-scheduler riddle (1.5.0) ruby-ole (1.2.11.2) ruby_parser (2.3.1) sexp_processor (~> 3.0) rufus-scheduler (2.0.11) tzinfo (>= 0.3.23) rwordnet (0.1.3) settingslogic (2.0.6) sexp_processor (3.0.7) simple_form (1.5.2) actionpack (~> 3.0) activemodel (~> 3.0) sinatra (1.2.7) rack (~> 1.1) tilt (>= 1.2.2, < 2.0) spreadsheet (0.6.5.9) ruby-ole (>= 1.0) systemu (2.2.0) thinking-sphinx (2.0.10) activerecord (>= 3.0.3) builder (>= 2.1.2) riddle (>= 1.5.0) thor (0.14.6) tilt (1.3.3) treetop (1.4.10) polyglot polyglot (>= 0.3.1) ts-resque-delta (1.1.1) resque (~> 1.10) resque-lock-timeout (~> 0.3.1) thinking-sphinx (>= 1.3.6) tuple (0.1.2) tzinfo (0.3.31) uuid (2.3.4) macaddr (~> 1.0) vegas (0.1.8) rack (>= 1.0.0) yaml_db (0.2.2)

PLATFORMS ruby

DEPENDENCIES annotate authlogic awesome_print bdb builder central_logger cocaine declarative_authorization faker friendly_id (~> 3.2.1) httpclient jquery-rails (>= 1.0.12) kaminari mail mocha mysql2 (< 0.3) nifty-generators nokogiri rails (= 3.0.9) rails3-generators random-word recaptcha redis redis-objects redis-store resque resque-scheduler ruby_parser rwordnet settingslogic simple_form spreadsheet thinking-sphinx (= 2.0.10) ts-resque-delta uuid yaml_db

pat commented 12 years ago

Hi Manoj

You'll need to update to the latest ts-resque-delta - 1.1.5.

letronje commented 12 years ago

thnx pat, that fixes it :)

ncri commented 12 years ago

Well, I get the same error here. Locally it worked, but now our live site's serach doesn't work :(

Using riddle (1.5.0) thinking-sphinx (2.0.10) flying-sphinx (0.6.0)

Need to get this fixed urgently... Will try to revert my ts version to an older one...

ncri commented 12 years ago

Maybe its a different issue...

undefined method indexes' for #<Riddle::Configuration:0x00000006171e88> /app/vendor/bundle/ruby/1.9.1/gems/flying-sphinx-0.6.0/lib/flying_sphinx/configuration.rb:122:inset_database_settings' /app/vendor/bundle/ruby/1.9.1/gems/flying-sphinx-0.6.0/lib/flying_sphinx/configuration.rb:22:in sphinx_configuration' /app/vendor/bundle/ruby/1.9.1/gems/flying-sphinx-0.6.0/lib/flying_sphinx/index_request.rb:70:inupdate_sphinx_configuration' /app/vendor/bundle/ruby/1.9.1/gems/flying-sphinx-0.6.0/lib/flying_sphinx/index_request.rb:32:in update_and_index' /app/vendor/bundle/ruby/1.9.1/gems/flying-sphinx-0.6.0/lib/flying_sphinx/tasks.rb:6:inblock (2 levels) in <top (required)>' /app/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/task.rb:205:in call' /app/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/task.rb:205:inblock in execute' /app/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/task.rb:200:in each' /app/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/task.rb:200:inexecute' /app/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/task.rb:158:in block in invoke_with_call_chain' /usr/local/lib/ruby/1.9.1/monitor.rb:201:inmon_synchronize' /app/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/task.rb:151:in invoke_with_call_chain' /app/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/task.rb:144:ininvoke' /app/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/application.rb:116:in invoke_task' /app/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/application.rb:94:inblock (2 levels) in top_level' /app/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/application.rb:94:in each' /app/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/application.rb:94:inblock in top_level' /app/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/application.rb:133:in standard_exception_handling' /app/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/application.rb:88:intop_level' /app/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/application.rb:66:in block in run' /app/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/application.rb:133:instandard_exception_handling' /app/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/application.rb:63:in run' /app/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/bin/rake:33:in<top (required)>' /app/vendor/bundle/ruby/1.9.1/bin/rake:19:in load' /app/vendor/bundle/ruby/1.9.1/bin/rake:19:in

'

pat commented 12 years ago

Grab flying-sphinx 0.6.1

On 11/11/2011, at 7:06 PM, Nico Ritsche wrote:

Well, I get the same error here. Locally it worked, but now our live site's serach doesn't work :(

Using riddle (1.5.0) thinking-sphinx (2.0.10) flying-sphinx (0.6.0)

Need to get this fixed urgently... Will try to revert my ts version to an older one...


Reply to this email directly or view it on GitHub: https://github.com/freelancing-god/thinking-sphinx/issues/301#issuecomment-2707430

ncri commented 12 years ago

ah, i have to get it from the repo? wont install with bundle update flying-sphinx

ncri commented 12 years ago

oops, had it locked, my fault ;-)

pat commented 12 years ago

Is your Gemfile locked to 0.6.0? 0.6.1 is definitely released, has been for a few days now. http://rubygems.org/gems/flying-sphinx/versions/0.6.1

On 11/11/2011, at 7:15 PM, Nico Ritsche wrote:

ah, i have to get it from the repo? wont install with bundle update flying-sphinx


Reply to this email directly or view it on GitHub: https://github.com/freelancing-god/thinking-sphinx/issues/301#issuecomment-2707500

ncri commented 12 years ago

Okay, works now, thx! Had to update another gem to resolve some dependency issues, that was a bit painful. ;-)