ankane/searchkick · error · ArgumentError

Unknown distance: #{distance}

Error message

Unknown distance: #{distance}

What it means

Error "Unknown distance: #{distance}" thrown in ankane/searchkick.

Source

Thrown at lib/searchkick/query.rb:1001

      end

      if Searchkick.opensearch?
        if exact
          # https://opensearch.org/docs/latest/search-plugins/knn/knn-score-script/#spaces
          space_type =
            case distance
            when "cosine"
              "cosinesimil"
            when "euclidean"
              "l2"
            when "taxicab"
              "l1"
            when "inner_product"
              "innerproduct"
            when "chebyshev"
              "linf"
            else
              raise ArgumentError, "Unknown distance: #{distance}"
            end

          payload[:query] = {
            script_score: {
              query: {
                bool: {
                  must: [filter, {exists: {field: field}}]
                }
              },
              script: {
                source: "knn_score",
                lang: "knn",
                params: {
                  field: field,
                  query_value: vector,
                  space_type: space_type
                }
              },

View on GitHub (pinned to 93e901a75b)

When it happens

Trigger: Thrown at lib/searchkick/query.rb:1001 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of ankane/searchkick@93e901a75b (2026-08-21). Data as JSON: /api/errors/beff1ddda34099dc. Report an issue: GitHub.