首页 > 代码库 > Solr字段配置错误

Solr字段配置错误

  在站内搜索Solr Schema设计时,有个FTS_URL字段(之前设计url也会参与检索和打分),因此其配置信息如下:

<field name="FTS_URL" type="string" indexed="true" stored="true" omitNorms="false" /> 

  其中 :

            type表示类型以及分词类型。

            indexed表示是否支持索引。

            stored表示是否保存到索引中,这个属性很关键,有些字段不适合保存,而且会影响性能。作为返回结果的字段,设为true,反之false。

     omitNorms表示是否支持打分,不支持则false。

  后来,根据分析,URL不适合分词,仅仅适合保存并返回结果的字段,因此把indexed设置为false。

<field name="FTS_URL" type="string" indexed="false" stored="true" omitNorms="false" /> 

  设置后也没有管它,今天solr重启,忽然发现solr的一个core起不起来了,错误信息如下:

OTHER_CORE: org.apache.solr.common.SolrException:org.apache.solr.common.SolrException: Schema Parsing Failed: SchemaField: FTS_URL conflicting ‘false‘ field options for non-indexed field:{indexed=false, stored=true, omitNorms=false}. Schema file is /usr/local/solrhome/solr/OTHER_CORE/schema.xml

  根据错误信息指示,字段配置冲突,然后信息提示不完整,“conflicting ‘false‘ field options for non-indexed”,到底指的是哪个属性呢?很显然,此处omitNorm是不合适的,只要把它去掉好了,重启solr,正常运行,ok 问题解决!

Solr字段配置错误