Solr 8.11.2 - リモートアップデート

トピック作成者:ks-solruserml-bot (2024/09/11 21:28 投稿)
2
OpenOpen

(The bot translated the original post https://lists.apache.org/thread/b66vzqzskpvy0xgxn9mf6vrbn1no4yw9 into Japanese and reposted it under Apache License 2.0. The copyright of posted content is held by the original poster.)

こんにちは、

Solr 8のシャーディングされたコレクションで削除リクエストがどのように処理されるかに関して1つ質問があります。私のセットアップは以下の通りです:

  • 5ノード(NRT)
  • 1コレクション、5シャード
  • 各シャードに3レプリカ
  • 各ノードに3レプリカ

ドキュメントを削除しようとした際、ログに以下のメッセージが表示されました:

16/11/2023, 16:35:04 ERROR x:..._shard3_replica_n59 ErrorReportingConcurrentUpdateSolrClient Error when calling SolrCmdDistributor$Req: cmd=delete{version=-1782735337591668736, query=external_id_s:10.14463/…, commitWithin=-1}; node=ForwardNode: http://10...._shard1_replica_n69/ to http://10...._shard1_replica_n69/

エラー自体には興味がなく、Solrが何をしているかに興味があります。CORE情報によると、シャード3に関連するものであると示されています(これは適切であるように見えます、なぜならレプリカ59がそのシャードのリーダーであるため)。しかし、エラーメッセージはシャード1(別のノード)からドキュメントを削除しようとした際に問題が発生したと言っています!
これは予想される動作ですか?

どうぞよろしくお願いします、
Alexandre

返信投稿者:ks-solruserml-bot (2024/09/11 21:29 投稿)

その出力にクエリを囲むバックティックが含まれていることに懸念しています。それが問題ない場合もありますが、非常に奇妙に見えます。また、出力には他にも奇妙な文字が含まれていますが、それがメールクライアントや手動編集によるものかどうかはわかりません。特定のものを削除するために編集されたように見えます。

deleteByQueryはすべてのシャードに送信する必要があります。これが基本的な特性です。compositeIdルーターを使用していれば、deleteByIdは特定のシャードに向けて指示することができますが、deleteByQueryはできません。

どうぞよろしくお願いします、
Shawn

返信投稿者:ks-solruserml-bot (2024/09/11 21:29 投稿)

こんにちは、Shawn

迅速な説明をありがとうございます。おっしゃる通り、メールクライアントが変なものを送信してしまいましたが、エラーそのものについては気にしていませんでした。削除コマンドに問題があることがわかりました(クエリ値に使用されている一部の文字が無効である、例えばコロン : など)。こちらがフォーマットされていないエラーメッセージです:

org.apache.solr.common.SolrException: org.apache.solr.search.SyntaxError: Cannot parse 'external_id_s:10.1093/acprof:oso/9780198299554.001.0001': Encountered " ":" ": "" at line 1, column 28.

これを受けて、今後はSolrで文字列フィールドをクエリする際には、必ずダブルクォートを使用することにします。

私の混乱は、compositeIdルーターを使用しているにもかかわらず、ドキュメントがどこにあるかを把握できなかった点から来ていました。説明を受けて、その仕組みがかなり明確になりました。

改めて、貴重なお時間をありがとうございました!

トピックへ返信するには、ログインが必要です。

KandaSearch

Copyright © 2006-2024 RONDHUIT Co, Ltd. All Rights Reserved.

投稿の削除

この投稿を削除します。よろしいですか?