创建带独立Schema的Solr Core遇合并问题求助
问题分析与解决办法
问题原因
你使用的managed-base是Solr的共享配置集,默认情况下managed-schema文件是多Core共享的——当你给product Core更新schema后,popularity Core因复用同一配置集,会自动继承这些字段,最终导致两个Core的schema被合并。
解决步骤
为每个Core创建独立配置集
- 复制Solr自带的
managed-base配置集目录(通常位于solr/server/solr/configsets/路径下),分别命名为product-config和popularity-config。 - 确保每个新配置集的
conf目录下,包含独立的managed-schema和solrconfig.xml文件。
- 复制Solr自带的
修正Core创建请求
创建Core时指定各自的独立配置集,同时修正拼写错误:- 创建product Core的请求:
http://solr:8983/solr/admin/cores?action=CREATE&name=product&instanceDir=product&configSet=product-config&schema=managed-schema - 创建popularity Core的请求(注意修正之前的
popualrity拼写错误):http://solr:8983/solr/admin/cores?action=CREATE&name=popularity&instanceDir=popularity&configSet=popularity-config&schema=managed-schema
- 创建product Core的请求:
重新上传独立Schema
再次执行两个POST请求,分别将product.json和popularity.json上传至对应Core的schema接口。此时两个Core的schema完全独立,不会再出现字段合并问题。
额外提醒
- 禁止直接修改共享配置集的文件,否则所有使用该配置集的Core都会受到影响。
- 若需复用部分配置,可在独立配置集中选择性继承共享配置内容,但必须保证
managed-schema为独立文件。
内容的提问来源于stack exchange,提问作者Aizaz
相关产品推荐
相关产品推荐

