外部ファイル フィールドの構成を次のように構成しました。
< field name="idRank" type="idRankFile" indexed="true" stored="true" omitNorms="true" omitTermFreqAndPositions="true" valType="pfloat" />
< fieldType name="idRankFile" keyField="id" defVal="10" stored="true" indexed="true" class="solr.ExternalFileField" valType="pfloat|float|tfloat" />
以下は、:external_idRank.txt という名前のファイルに保存した値です。ここでのキーは、ドキュメントのサイズ フィールドの値です。
2938025 = 100.0
4030380 = 115.0
9751 = 125.0
12738 = 135.0
9752 = 145.0
idRank
次のクエリを使用して結果を取得し、値に基づいて並べ替えました。
/solr/collection1/select/?&q=content:* _ val _:"sum(idRank,1)"&fl=size&rows=100
しかし、次のクエリを使用すると、次のように例外がスローされます。
org.apache.solr.search.function.FileFloatSource.getFloats(FileFloatSource.java:273) の java.lang.NullPointerException org.apache.solr.search.function.FileFloatSource.access$000(FileFloatSource.java:51) の org .apache.solr.search.function.FileFloatSource$2.createValue(FileFloatSource.java:147) org.apache.solr.search.function.FileFloatSource$Cache.get(FileFloatSource.java:190) org.apache.solr. org.apache.lucene.queries.function.valuesource.MultiFloatFunction の org.apache.solr.search.function.FileFloatSource.getValues(FileFloatSource.java:84) の search.function.FileFloatSource.getCachedFloats(FileFloatSource.java:141) getValues(MultiFloatFunction.java:65) at org.apache.lucene.queries.function.FunctionQuery$AllScorer.(FunctionQuery.java:120) at org.apache.lucene.queries.function.FunctionQuery$FunctionWeight.scorer(FunctionQuery.java:95) at org.apache.lucene.search.BooleanQuery$BooleanWeight.scorer(BooleanQuery.java:323)
このクエリを例外なく実行するにはどうすればよいですか?