我在Solr遇到了copyFields的问题。
我的schema.xml的相关部分是:
<field name="ID" type="string" indexed="true" stored="true"/>
<field name="product" type="string" indexed="true" stored="true"/>
<field name="product_copy" type="text" indexed="true" stored="true"/>
<copyField source="product" dest="proudct_copy"/>
如果我添加如下文档:
Doc:
{
"id":"1",
"product":"prod1",
"product_copy":["prod1"]
}
当我将字段产品从 prod1 更新为 prod2 时,我希望该文档与上面相同,但是&#34; product_copy&#34;:[&#34; prod2&#34;] ,但我收到了以下文档:
Doc:
{
"id":"1",
"product":"prod1",
"product_copy":["prod1","prod2"]
}
稍后如果我尝试更新文档,它将永远不会再次更新,因为我得到一个例外,说明单值属性 product_copy 遇到多个值。 我的问题是: 为什么我在更新文档时将相同的值复制到目标字段以及为什么它为单个值属性采用多个值?
非常感谢任何帮助。