0

Rails プロジェクトでスフィンクス検索を使用しています。私はsphinx.ymlファイルを持っています。

   defaults: &defaults

   enable_wildcard: 1

   min_prefix_len: 2

   enable_star: 1

   max_matches: 25000

   development:

     <<: *defaults

   test:

     <<: *defaults

   production:

     <<: *defaults

     pid_file: "RAILS_ROOT/log/searchd.pid"

     searchd_file_path: "RAILS_ROOT/config/db/sphinx"

     indexer_binary_name: "/usr/local/bin/indexer"

     searchd_binary_name: "/usr/local/bin/searchd"

     port: 9314

私のコントローラーのアクションには、次のコードがあります。

    Application.search(query,:with => options,:order => "updated_at DESC",:max_matches=> 25_000,
                                                                   :match_mode => :extended).page(params[:page]).per(11)

私はこのようなエラーが発生しています。

       searchd error (status: 1): per-query max_matches=25000 out of bounds (per-server max_matches=1000)

何か良い案は??お願いします。

4

1 に答える 1

2

sphinx.conf で max_matches を増やし、searchd プロセスを再起動する必要があります。max_matches は検索設定であり、インデックス作成プロセスとは関係ありません。

于 2012-10-10T06:44:43.080 に答える