私の solr schema.xml は次のように定義されています。
<?xml version="1.0" encoding="UTF-8" ?>
<schema name="public" version="1.5">
<fields>
<field name="_version_" type="long" indexed="true" stored="true" />
<field name="ranking" type="double" indexed="true" stored="false" />
<!—other fields —>
</fields>
<uniqueKey>doc_id</uniqueKey>
<types>
<fieldType name="long" class="solr.TrieLongField" precisionStep="0" positionIncrementGap="0" />
<filedType name="double" class="solr.TrieDoubleField" precisionStep="0" positionIncrementGap="0" />
<fieldType name="date" class="solr.TrieDateField" precisionStep="0" positionIncrementGap="0" />
</types>
</schema>
元のスキーマにはフィールド タイプ double とフィールド ランキングがなく、すべて正常に動作しましたが、それらを追加した後もスローし続けました。
Caused by: org.apache.solr.common.SolrException: Unknown fieldType 'double' specified on field kb_ranking
at org.apache.solr.schema.IndexSchema.loadFields(IndexSchema.java:648)
at org.apache.solr.schema.IndexSchema.readSchema(IndexSchema.java:471)
追加した 2 行は他のフィールドと同じように定義されていますが、なぜ問題が発生したのでしょうか?
次のように、ランキングとダブルの 2 行を 1 行のみに変更した後:
<filedType name="double" class="solr.TrieDoubleField" precisionStep="0" positionIncrementGap="0" />
org.apache.solr.common.SolrException: Unknown fieldType 'solr.TrieDoubleField' がフィールドランキングで指定されました。ただし、TrieDoulbeField は TrieLongField と同じパッケージに含まれています。
オンラインで 1 日解決策を検索しましたが、問題を解決できる解決策が見つかりませんでした。私はsolrが初めてです。誰かが私の提案をしてもらえますか?