Solr :HttpSolrServer$RemoteSolrException: ERROR: [doc=sqoop_job_main.log] unknown field 'attr_meta'

一、问题描述

1.环境

solr4.10.3-cdh5.7.0(即使更高版本,如果问题类似,应该也是同样的问题)

2.问题:

在客户端代码发送solr服务器请求时,报错:

Exception in thread "main" org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException: ERROR: [doc=sqoop_job_main.log] unknown field 'attr_meta'
	at org.apache.solr.client.solrj.impl.HttpSolrServer.executeMethod(HttpSolrServer.java:621)
	at org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:228)
	at org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:224)
	at solr.ReadHadoopFile.indexFilesSolrCell(ReadHadoopFile.java:65)
	at solr.ReadHadoopFile.main(ReadHadoopFile.java:25)

二、问题原因

是因为在schema.xml中没有定义attr_的动态域,所以,导致程序中调用attr_开头的域无法找到对应字段的定义。在solr中,所有域的使用,都要先定义!

三、解决办法

修改schema.xml文件,添加attr_开头的动态域定义

<dynamicField name="attr_*" type="text_general" indexed="true" stored="true" multiValued="true"/>

猜你喜欢

转载自blog.csdn.net/u010886217/article/details/89597514