2012-03-02 15 views
0

私は石灰岩モジュールとNodejsを使ってスフィンクスインデックスを照会しています。石灰岩はnpmで時代遅れですので、githubからダウンロードして、それはスフィンクスサーバーに正常に接続されています。次のように私は次のコードを実行しようとしたときしかし、私は今NodejsとSphinxデータクエリの問題

Sphinx ERR: Searchd command older than client's version, some options might not workServer issued ERROR: 0bad multi-query count 0 (must be in 1..32 range) 

var limestone = require("limestone").SphinxClient(), 
    sys = require("sys"); 

    limestone.connect("192.168.2.443:9312", // port. 9312 is standard Sphinx port. also 'host:port' allowed 
    function(err) { 
     if (err) { 
      sys.puts('Connection error: ' + err); 
     } 

     sys.puts('Connected, sending query'); 
     limestone.query(   
     {'query':'raja',maxmatches:1}, 
      function(err, answer) { 

      if(err){ 
       console.log("Sphinx ERR: "+err); 
      }else{ 

       console.log(JSON.stringify(answer)); 
       limestone.disconnect(); 

      }    
      });  
    }); 
iは以下のエラーを得た、

、問題に直面しています。この上で私を助けてください!

答えて

1

私はsphinxseachをUbuntuにインストールしました。リポジトリのバージョンは0.9.9です。私はあなたのようなエラーを得た:

Searchd command older than client's version, some options might not workServer issued ERROR: Qclient version is higher than daemon version (client is v.1.24, daemon is v.1.22) undefined

limestone's githubで問題を見た後、私はそれが2だから私はSphinx download pageから2.0.4(彼らはUbuntuのパッケージを持っている)、およびそれをインストールSphinxのバージョンで動作するようになっていた考え出し作品!それで、あなたがアップグレードすることが可能なら、それはとにかく良いアイデアかもしれません - そして、石灰岩はたぶん最新のリリースを追跡するだけです。

+0

こんにちは、最後に私のスフィンクスバージョンを2.0.4にアップグレードして上記のファイルを実行しました。 "Searchdコマンドはクライアントのバージョンより古いですが、いくつかのオプションが動作しない可能性があります サーバはERROR :: 0badマルチクエリ数0(1..32範囲にする必要があります) " – Raja

+0

奇妙な - 100%クリアするには、石灰岩マスターとsphinx 2.0.4が簡単に' {query: "foo"、maxmatches: 1} '。 –

+0

こんにちは、ご意見ありがとうございます。それはlimestone.jsにSphinx.clientCommand値を変更した後に、今私の作品:次のようにlimestone.jsで – Raja