0
我想在我的数据导入处理程序配置中使用缓存中的一些实体。不知何故,如果我使用缓存,我只能获得多值字段的第一个值。我的配置如下所示:Solr DataImportHandler缓存支持多个值
<entity name="product" query="SELECT product_id FROM Product WHERE 1">
<entity name="strength" query="SELECT *
FROM Strength WHERE product_id = '${product.product_id}'">
<entity name="form" query="SELECT CONCAT(parent_route,'|',form_name) AS form_name, LOWER(CONCAT_WS('\n',form_name,parent_route)) AS form_name_s,
CAST(form_id AS CHAR(10)) AS form_id_string FROM Form WHERE form_id = '${strength.form_id}'"
transformer="RegexTransformer"
cacheImpl="SortedMapBackedCache" cacheLookup="strength.form_id" cacheKey="form_id_string">
<field column="form_name" name="form_name" />
<field column="form_name_s" splitBy="\n" />
</entity>
</entity>
</entity>
应该为实体“form”返回两行,但只有第一个行在启用缓存时才可见。 Solr没有能力缓存多行或者我做错了什么?我的Solr版本是4.1。