Skip to content

Wiki search throws 500 error for some wiki content

Summary

reported from this search - the wiki scope throws an error

https://gitlab.com/search?group_id=9970&scope=wiki_blobs&search=Plan%20vision

What is the current bug behavior?

some of the content causes an error

What is the expected correct behavior?

the system should handle these errors gracefully

Relevant logs and/or screenshots

stack trace
"exception": {
        "backtrace": [
          "app/helpers/search_helper.rb:576:in `search_truncate'",
          "app/helpers/search_helper.rb:570:in `simple_search_highlight_and_truncate'",
          "app/views/search/results/_wiki_blob.html.haml:10",
          "app/helpers/application_helper.rb:16:in `render_if_exists'",
          "app/views/search/_results_list.html.haml:36",
          "app/views/search/_results_list.html.haml:35:in `each'",
          "app/views/search/_results_list.html.haml:35:in `each_with_index'",
          "app/views/search/_results_list.html.haml:35",
          "app/views/search/_results.html.haml:3",
          "app/views/search/show.html.haml:36",
          "app/controllers/application_controller.rb:154:in `render'",
          "app/controllers/application_controller.rb:542:in `block in allow_gitaly_ref_name_caching'",
          "lib/gitlab/gitaly_client.rb:479:in `allow_ref_name_caching'",
          "app/controllers/application_controller.rb:541:in `allow_gitaly_ref_name_caching'",
          "app/controllers/application_controller.rb:493:in `set_current_admin'",
          "lib/gitlab/session.rb:11:in `with_session'",
          "app/controllers/application_controller.rb:484:in `set_session_storage'",
          "lib/gitlab/i18n.rb:116:in `with_locale'",
          "lib/gitlab/i18n.rb:122:in `with_user_locale'",
          "app/controllers/application_controller.rb:475:in `set_locale'",
          "app/controllers/application_controller.rb:464:in `set_current_context'",
          "lib/gitlab/ip_address_state.rb:11:in `with'",
          "app/controllers/application_controller.rb:470:in `set_current_ip_address'",
          "lib/gitlab/middleware/action_controller_static_context.rb:23:in `call'",
          "config/initializers/action_dispatch_journey_router.rb:52:in `block in find_routes'",
          "config/initializers/action_dispatch_journey_router.rb:25:in `map!'",
          "config/initializers/action_dispatch_journey_router.rb:25:in `find_routes'",
          "ee/lib/omni_auth/strategies/group_saml.rb:41:in `other_phase'",
          "lib/gitlab/metrics/elasticsearch_rack_middleware.rb:16:in `call'",
          "lib/gitlab/middleware/sidekiq_shard_awareness_validation.rb:20:in `block in call'",
          "lib/gitlab/sidekiq_sharding/validator.rb:42:in `enabled'",
          "lib/gitlab/middleware/sidekiq_shard_awareness_validation.rb:20:in `call'",
          "lib/gitlab/middleware/memory_report.rb:13:in `call'",
          "lib/gitlab/middleware/speedscope.rb:13:in `call'",
          "lib/gitlab/database/load_balancing/rack_middleware.rb:23:in `call'",
          "lib/gitlab/middleware/rails_queue_duration.rb:33:in `call'",
          "lib/gitlab/etag_caching/middleware.rb:21:in `call'",
          "lib/gitlab/metrics/rack_middleware.rb:16:in `block in call'",
          "lib/gitlab/metrics/web_transaction.rb:46:in `run'",
          "lib/gitlab/metrics/rack_middleware.rb:16:in `call'",
          "lib/gitlab/middleware/go.rb:21:in `call'",
          "lib/gitlab/middleware/query_analyzer.rb:11:in `block in call'",
          "lib/gitlab/database/query_analyzer.rb:83:in `within'",
          "lib/gitlab/middleware/query_analyzer.rb:11:in `call'",
          "lib/ci/job_token/middleware.rb:11:in `call'",
          "lib/gitlab/middleware/multipart.rb:173:in `call'",
          "lib/gitlab/middleware/read_only/controller.rb:50:in `call'",
          "lib/gitlab/middleware/read_only.rb:18:in `call'",
          "lib/gitlab/middleware/unauthenticated_session_expiry.rb:18:in `call'",
          "lib/gitlab/middleware/secure_headers.rb:11:in `call'",
          "lib/gitlab/middleware/same_site_cookies.rb:27:in `call'",
          "lib/gitlab/middleware/path_traversal_check.rb:40:in `call'",
          "lib/gitlab/middleware/handle_malformed_strings.rb:21:in `call'",
          "lib/gitlab/middleware/basic_health_check.rb:25:in `call'",
          "lib/gitlab/middleware/handle_ip_spoof_attack_error.rb:25:in `call'",
          "lib/gitlab/middleware/request_context.rb:15:in `call'",
          "lib/gitlab/middleware/webhook_recursion_detection.rb:15:in `call'",
          "config/initializers/fix_local_cache_middleware.rb:11:in `call'",
          "lib/gitlab/middleware/compressed_json.rb:44:in `call'",
          "lib/gitlab/middleware/rack_multipart_tempfile_factory.rb:19:in `call'",
          "lib/gitlab/metrics/requests_rack_middleware.rb:83:in `call'",
          "lib/gitlab/middleware/sidekiq_web_static.rb:20:in `call'",
          "lib/gitlab/middleware/release_env.rb:12:in `call'"
        ],
        "cause_class": "RuntimeError",
        "class": "ActionView::Template::Error",
        "message": "input string cannot be empty"
      },

Possible fixes

Edited by 🤖 GitLab Bot 🤖