Solr 検索へのクエリが異なる値を返すという問題に遭遇しました。ただし、一意のキー フィールドに設定されている ID を照会しています。
したがって、Solr Admin UI で次のようなクエリを実行します。
関連する応答情報を以下に示します。
"response": {
"numFound": 1,
"start": 0,
"maxScore": 7.4537606,
"docs": [
{
"title": [
"ICARDA forced to move"
],
"moduleid_s": "58",
"id": "client1.com.58.1673",
"enddate_dt": "2015-09-25T23:59:00Z",
"url": "mysite.com/item.aspx?id=1673",
"startdate_dt": "2015-09-25T00:00:00Z",
そのクエリを数回実行すると、最終的には異なる応答が得られます。
"response": {
"numFound": 1,
"start": 0,
"maxScore": 7.453251,
"docs": [
{
"title": [
"ICARDA forced to move"
],
"moduleid_s": "58",
"id": "client1.com.58.1673",
"enddate_dt": "2015-09-25T23:59:00Z",
"url": "mysiteNewUrl.com/item.aspx?id=1673",
"startdate_dt": "2015-09-25T00:00:00Z",
URLが異なりますのでご注意ください。
Debug Query がチェックされています。GET_FIELDS
さまざまな URL がセクションにあることがわかります。
なぜ/どのように異なる情報を取得できますか? 一意のフィールドとしてマークされている ID を照会しています。私の理解では、それら以上のものは決してないはずです。これは同期の問題でしょうか? 単一のコアが選択された Solr 管理 UI クエリを使用しています。
その ID を持つドキュメントが 1 つだけインデックスにあるかどうかを確認する方法はありますか?
アップデート:
ファセット クエリを実行したところ、unique が 2 を返しました
<lst name="facet_fields">
<lst name="id">
<int name="client1.com.58.1673">2</int>
対問題を抱えていないもの。
<lst name="facet_fields">
<lst name="id">
<int name="client1.com.58.163">1</int>
これは正しいですか?ドキュメントが重複しているという点で、これは私の問題を説明していますが、その場合、異なるデータではなく 2 つのドキュメントが返されないのはなぜですか?