2016-04-03 115 views
0

我正在尝试添加一个基于错误消息SOLR抛出到updateCSV方法的唯一ID列。问题是,即使我用ID标识了一个列,并且该列实际上是基于数据集的唯一列,但即使在经过SO上的其他几个帖子之后,它仍然抛出相同的错误。SOLR:找不到UniqueKeyID ID列

我的数据没有标题行,这是我在curl语句中定义的,而且还包含了以分隔符分隔的管道。

错误是通常的 “失踪强制唯一键字段id”

这里是我的发言,

curl http://ey9omprna004:8983/solr/HSIAnalytics3/update/csv?stream.file=/data04/dev/v601756/scripts/HSIAnalytics3/data/mergedfiles.csv&commit=true&stream.contentType=text/plain&separator=|&header=false&fieldnames=c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12,c13,c14,c15,c16,c17,id,c19,c20,c21,c22,c23,c24,c25,c26,c27,c28,c29,c30,c31,c32,c33,c34,c35,c36,c37,c38,c39,c40,c41,c42,c43,c44,c45,c46,c47,c48,c49,c50,c51,c52,c53,c54,c55,c56,c57,c58,c59;charset=utf-8 

这里是集

1|EC|NAR|HSI|000300794290||2921||RONKVA-RONKVALK-ERXG01|IP1/0.70815.1|1457824772||ifHCInOctets|2|9684|145782477200|145782567500|120676338|121769436||||||||||||||||||||||||||||||||40102|||1093098|Y||903|20160312231932| 
+0

你的文档是否有任何被称为“id”的字段?这是solr正在寻找的独特领域。它应该在schema.xml中的标签''中定义 –

回答

1

该文件在solr样本需要一个独特的领域进行鉴定或唯一性

它在名为schema.xml的文件中提到。

您可能已经提到它并将其标记为required = true

而你正在试图建立索引的文档与uniqueid)字段 失踪(对于我们暂时condsider它作为id字段,你还没有共享YOUT schema.xml文件),所以它抛出错误

将缺少的ID字段添加到文档中,或者可以删除同一字段的required属性或将其标记为false

如果你能分享schema.xml这将是很好的,所以我们可以帮助分析问题并给出答案。

1

从你在curl语句中定义的内容。我认为c1字段是您唯一的ID。

更改schema.xml中的<uniqueKey>标记。

当前必须是<uniqueKey>id</uniquekey>

如果c1是表示数据集中唯一值的字段,请尝试将其更改为<uniqueKey>c1</uniquekey>