Restream/redmine_elasticsearch

Custom Analyzer [search_analyzer] failed to find filter under name [russian_morphology]]

wreiske opened this issue · 3 comments

Hello!

I'd love to get this plugin working in our environment as searches become slower and slower every day (we've got almost 30000 tickets today).

Environment:
Redmine version 2.3.1.stable.11898
Ruby version 1.9.3 (x86_64-linux)
Rails version 3.2.13
Environment production
Database adapter Mysql2

I followed all of the instructions and while running the bundle exec rake redmine_elasticsearch:reindex_all BATCH_SIZE=100 RAILS_ENV=production command it failed to create the index. Any ideas?

Loading Rails environment for Resque
** Invoke redmine_elasticsearch:reindex_all (first_time)
** Invoke redmine_elasticsearch:logged (first_time)
** Invoke environment (first_time)
** Execute environment
Creating scope :system. Overwriting existing method Enumeration.system.
OpenIdAuthentication.store is nil. Using in-memory store.
Creating scope :sorted. Overwriting existing method User.sorted.
** Execute redmine_elasticsearch:logged
** Execute redmine_elasticsearch:reindex_all
Recreate index for all available search types
rake aborted!
Can't create index:
{"error":"IndexCreationException[[redmineapp_production] failed to create index]; nested: IllegalArgumentException[Custom Analyzer [search_analyzer] failed to find filter under name [russian_morphology]]; ","status":400}
/www/production/plugins/redmine_elasticsearch/lib/redmine_elasticsearch/indexer_service.rb:74:in `create_index'
/www/production/plugins/redmine_elasticsearch/lib/redmine_elasticsearch/indexer_service.rb:12:in `recreate_index'
/www/production/plugins/redmine_elasticsearch/lib/redmine_elasticsearch/indexer_service.rb:17:in `reindex_all'
/www/production/plugins/redmine_elasticsearch/lib/tasks/index.rake:18:in `block (2 levels) in <top (required)>'
/usr/local/rvm/gems/ruby-1.9.3-p429/gems/rake-0.9.6/lib/rake/task.rb:228:in `call'
/usr/local/rvm/gems/ruby-1.9.3-p429/gems/rake-0.9.6/lib/rake/task.rb:228:in `block in execute'
/usr/local/rvm/gems/ruby-1.9.3-p429/gems/rake-0.9.6/lib/rake/task.rb:223:in `each'
/usr/local/rvm/gems/ruby-1.9.3-p429/gems/rake-0.9.6/lib/rake/task.rb:223:in `execute'
/usr/local/rvm/gems/ruby-1.9.3-p429/gems/rake-0.9.6/lib/rake/task.rb:166:in `block in invoke_with_call_chain'
/usr/local/rvm/rubies/ruby-1.9.3-p429/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize'
/usr/local/rvm/gems/ruby-1.9.3-p429/gems/rake-0.9.6/lib/rake/task.rb:159:in `invoke_with_call_chain'
/usr/local/rvm/gems/ruby-1.9.3-p429/gems/rake-0.9.6/lib/rake/task.rb:152:in `invoke'
/usr/local/rvm/gems/ruby-1.9.3-p429/gems/rake-0.9.6/lib/rake/application.rb:143:in `invoke_task'
/usr/local/rvm/gems/ruby-1.9.3-p429/gems/rake-0.9.6/lib/rake/application.rb:101:in `block (2 levels) in top_level'
/usr/local/rvm/gems/ruby-1.9.3-p429/gems/rake-0.9.6/lib/rake/application.rb:101:in `each'
/usr/local/rvm/gems/ruby-1.9.3-p429/gems/rake-0.9.6/lib/rake/application.rb:101:in `block in top_level'
/usr/local/rvm/gems/ruby-1.9.3-p429/gems/rake-0.9.6/lib/rake/application.rb:110:in `run_with_threads'
/usr/local/rvm/gems/ruby-1.9.3-p429/gems/rake-0.9.6/lib/rake/application.rb:95:in `top_level'
/usr/local/rvm/gems/ruby-1.9.3-p429/gems/rake-0.9.6/lib/rake/application.rb:73:in `block in run'
/usr/local/rvm/gems/ruby-1.9.3-p429/gems/rake-0.9.6/lib/rake/application.rb:160:in `standard_exception_handling'
/usr/local/rvm/gems/ruby-1.9.3-p429/gems/rake-0.9.6/lib/rake/application.rb:70:in `run'
/usr/local/rvm/gems/ruby-1.9.3-p429/gems/rake-0.9.6/bin/rake:37:in `<top (required)>'
/usr/local/rvm/gems/ruby-1.9.3-p429/bin/rake:19:in `load'
/usr/local/rvm/gems/ruby-1.9.3-p429/bin/rake:19:in `<main>'
/usr/local/rvm/gems/ruby-1.9.3-p429/bin/ruby_noexec_wrapper:14:in `eval'
/usr/local/rvm/gems/ruby-1.9.3-p429/bin/ruby_noexec_wrapper:14:in `<main>'
Tasks: TOP => redmine_elasticsearch:reindex_all

Any help would be greatly appreciated!

Thanks,
Will

Hi @wreiske,
Seems that "russian_morphology" plugin for elasticsearch has not installed.
see: https://github.com/Undev/redmine_elasticsearch#install

Ahh, seems as though i needed to restart elastic search for the plugin to take affect (duh!)

Maybe add a note about restarting elastic search before running the migrate command for redmine?

Install elastic search
Install plugins
Start elastic search

When i "installed" elastic search, I started the service before the plugins.

Thanks,
Will

Got everything running and I can see the new search bar on the Project's page... I can not however figure out how to search inside issues, notes, wiki, etc. The search bar at the top of the screen (Default search) doesn't seem to use elastic search.

also, i had to install Redis to get this working, not sure if that was in your documentation anywhere.

-Will