Restream/redmine_elasticsearch

Fail on search deleted issue

Closed this issue · 4 comments

Hi,

When I search a content on a deleted Issue, the Redmine show the error: Page not found.
This is the log error:

ActiveRecord::RecordNotFound (Couldn't find Issue with id=20358):
activerecord (3.2.19) lib/active_record/relation/finder_methods.rb:344:in find_one' activerecord (3.2.19) lib/active_record/relation/finder_methods.rb:315:infind_with_ids'
activerecord (3.2.19) lib/active_record/relation/finder_methods.rb:107:in find' activerecord (3.2.19) lib/active_record/querying.rb:5:infind'
tire (0.6.2) lib/tire/results/collection.rb:157:in __find_records_by_ids' tire (0.6.2) lib/tire/results/collection.rb:145:inblock in __get_results_with_load'
tire (0.6.2) lib/tire/results/collection.rb:132:in each' tire (0.6.2) lib/tire/results/collection.rb:132:in__get_results_with_load'
tire (0.6.2) lib/tire/results/collection.rb:28:in results' tire (0.6.2) lib/tire/results/collection.rb:48:inempty?'
plugins/redmine_elasticsearch/lib/redmine_elasticsearch/patches/search_controller_patch.rb:240:in get_results_by_type_from_search_results' plugins/redmine_elasticsearch/lib/redmine_elasticsearch/patches/search_controller_patch.rb:46:inindex_with_elasticsearch'
actionpack (3.2.19) lib/action_controller/metal/implicit_render.rb:4:in send_action' actionpack (3.2.19) lib/abstract_controller/base.rb:167:inprocess_action'
actionpack (3.2.19) lib/action_controller/metal/rendering.rb:10:in process_action' actionpack (3.2.19) lib/abstract_controller/callbacks.rb:18:inblock in process_action'
activesupport (3.2.19) lib/active_support/callbacks.rb:491:in _run__2280154227988599674__process_action__1400054132488452919__callbacks' activesupport (3.2.19) lib/active_support/callbacks.rb:405:in__run_callback'
activesupport (3.2.19) lib/active_support/callbacks.rb:385:in _run_process_action_callbacks' activesupport (3.2.19) lib/active_support/callbacks.rb:81:inrun_callbacks'
actionpack (3.2.19) lib/abstract_controller/callbacks.rb:17:in process_action' actionpack (3.2.19) lib/action_controller/metal/rescue.rb:29:inprocess_action'
actionpack (3.2.19) lib/action_controller/metal/instrumentation.rb:30:in block in process_action' activesupport (3.2.19) lib/active_support/notifications.rb:123:inblock in instrument'
activesupport (3.2.19) lib/active_support/notifications/instrumenter.rb:20:in instrument' activesupport (3.2.19) lib/active_support/notifications.rb:123:ininstrument'
actionpack (3.2.19) lib/action_controller/metal/instrumentation.rb:29:in process_action' actionpack (3.2.19) lib/action_controller/metal/params_wrapper.rb:207:inprocess_action'
activerecord (3.2.19) lib/active_record/railties/controller_runtime.rb:18:in process_action' actionpack (3.2.19) lib/abstract_controller/base.rb:121:inprocess'
actionpack (3.2.19) lib/abstract_controller/rendering.rb:45:in process' actionpack (3.2.19) lib/action_controller/metal.rb:203:indispatch'
actionpack (3.2.19) lib/action_controller/metal/rack_delegation.rb:14:in dispatch' actionpack (3.2.19) lib/action_controller/metal.rb:246:inblock in action'
actionpack (3.2.19) lib/action_dispatch/routing/route_set.rb:73:in call' actionpack (3.2.19) lib/action_dispatch/routing/route_set.rb:73:indispatch'
actionpack (3.2.19) lib/action_dispatch/routing/route_set.rb:36:in call' journey (1.0.4) lib/journey/router.rb:68:inblock in call'
journey (1.0.4) lib/journey/router.rb:56:in each' journey (1.0.4) lib/journey/router.rb:56:incall'
actionpack (3.2.19) lib/action_dispatch/routing/route_set.rb:608:in call' rack-openid (1.4.2) lib/rack/openid.rb:98:incall'
actionpack (3.2.19) lib/action_dispatch/middleware/best_standards_support.rb:17:in call' rack (1.4.5) lib/rack/etag.rb:23:incall'
rack (1.4.5) lib/rack/conditionalget.rb:25:in call' actionpack (3.2.19) lib/action_dispatch/middleware/head.rb:14:incall'
actionpack (3.2.19) lib/action_dispatch/middleware/params_parser.rb:21:in call' actionpack (3.2.19) lib/action_dispatch/middleware/flash.rb:242:incall'
rack (1.4.5) lib/rack/session/abstract/id.rb:210:in context' rack (1.4.5) lib/rack/session/abstract/id.rb:205:incall'
actionpack (3.2.19) lib/action_dispatch/middleware/cookies.rb:341:in call' activerecord (3.2.19) lib/active_record/query_cache.rb:64:incall'
activerecord (3.2.19) lib/active_record/connection_adapters/abstract/connection_pool.rb:479:in call' actionpack (3.2.19) lib/action_dispatch/middleware/callbacks.rb:28:inblock in call'
activesupport (3.2.19) lib/active_support/callbacks.rb:405:in _run__1890543195152159465__call__714142568870896676__callbacks' activesupport (3.2.19) lib/active_support/callbacks.rb:405:in__run_callback'
activesupport (3.2.19) lib/active_support/callbacks.rb:385:in _run_call_callbacks' activesupport (3.2.19) lib/active_support/callbacks.rb:81:inrun_callbacks'
actionpack (3.2.19) lib/action_dispatch/middleware/callbacks.rb:27:in call' actionpack (3.2.19) lib/action_dispatch/middleware/remote_ip.rb:31:incall'
actionpack (3.2.19) lib/action_dispatch/middleware/debug_exceptions.rb:16:in call' actionpack (3.2.19) lib/action_dispatch/middleware/show_exceptions.rb:56:incall'
railties (3.2.19) lib/rails/rack/logger.rb:32:in call_app' railties (3.2.19) lib/rails/rack/logger.rb:16:inblock in call'
activesupport (3.2.19) lib/active_support/tagged_logging.rb:22:in tagged' railties (3.2.19) lib/rails/rack/logger.rb:16:incall'
actionpack (3.2.19) lib/action_dispatch/middleware/request_id.rb:22:in call' rack (1.4.5) lib/rack/methodoverride.rb:21:incall'
rack (1.4.5) lib/rack/runtime.rb:17:in call' activesupport (3.2.19) lib/active_support/cache/strategy/local_cache.rb:72:incall'
rack (1.4.5) lib/rack/lock.rb:15:in call' actionpack (3.2.19) lib/action_dispatch/middleware/static.rb:63:incall'
rack-cache (1.2) lib/rack/cache/context.rb:136:in forward' rack-cache (1.2) lib/rack/cache/context.rb:245:infetch'
rack-cache (1.2) lib/rack/cache/context.rb:185:in lookup' rack-cache (1.2) lib/rack/cache/context.rb:66:incall!'
rack-cache (1.2) lib/rack/cache/context.rb:51:in call' railties (3.2.19) lib/rails/engine.rb:484:incall'
railties (3.2.19) lib/rails/application.rb:231:in call' railties (3.2.19) lib/rails/railtie/configurable.rb:30:inmethod_missing'
rack (1.4.5) lib/rack/builder.rb:134:in call' rack (1.4.5) lib/rack/urlmap.rb:64:inblock in call'
rack (1.4.5) lib/rack/urlmap.rb:49:in each' rack (1.4.5) lib/rack/urlmap.rb:49:incall'
passenger (4.0.41) lib/phusion_passenger/rack/thread_handler_extension.rb:74:in process_request' passenger (4.0.41) lib/phusion_passenger/request_handler/thread_handler.rb:141:inaccept_and_process_next_request'
passenger (4.0.41) lib/phusion_passenger/request_handler/thread_handler.rb:109:in main_loop' passenger (4.0.41) lib/phusion_passenger/request_handler.rb:448:inblock (3 levels) in start_threads'

My resque is working fine.
How I solve this?

Thanks

I have the exact same issue here.

This error seems to be caused by the tire gem. They indicate that deleted records need to be removed from the index. I've tested that the resque worker job actually does run after a delete, however somehow it isn't removed from the index as the error is still raised. The workaround for now is to rebuild all the indexes periodically: bundle exec rake redmine_elasticsearch:reindex_all RAILS_ENV=production.

@Undev: Do you have a suggestion on how to update the index when records are deleted?

Excellent thanks.

Perfect! Thanks @nodecarter