首页 文章

修改schema.xml后重新加载Solr内核时出错 . 无法实现复制因子1(仅找到0个副本)

提问于
浏览
2

目前在Solr模式下与Cassandra合作,并开始在Solr中运行Cassandra .

using dse 4.7
cassandra 2.1.8

./dsetool create_core vin_service_development.vinid_search1 generateResources = true reindex = true

成功创建索引并能够在http://10.14.210.22:8983/solr/#/中的Core Selector Select列表下查看该表

将schema.xml字段类型从“TextField”更改为“StrField”,并希望重新加载对schema.xml文件所做的更改 . 执行以下命令后 .

./dsetool reload_core vin_service_development.vinid_search1 reindex = true solrconfig = solr.xml

solr.xml放在dsetool的相同路径中 .

错误信息:

brsblcdb012:/apps/apg-data.cassandra/bin ./dsetool reload_core vin_service_development.vinid_search1 reindex=true solrconfig=solr.xml
WARN  20:21:14 Error while computing token map for datacenter datacenter1: could not achieve replication factor 1 (found 0 replicas only), check your keyspace replication settings. Note that this can affect the performance of the driver.
org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException: Error in xpath:/config/luceneMatchVersion for solrconfig.xml
        at org.apache.solr.client.solrj.impl.HttpSolrServer.executeMethod(HttpSolrServer.java:665)
        at org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:303)
        at org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:294)
        at com.datastax.bdp.tools.SearchDseToolCommands.createOrReloadCore(SearchDseToolCommands.java:383)
        at com.datastax.bdp.tools.SearchDseToolCommands.access$200(SearchDseToolCommands.java:53)
        at com.datastax.bdp.tools.SearchDseToolCommands$ReloadCore.execute(SearchDseToolCommands.java:201)
        at com.datastax.bdp.tools.DseTool.run(DseTool.java:114)
        at com.datastax.bdp.tools.DseTool.run(DseTool.java:51)
        at com.datastax.bdp.tools.DseTool.main(DseTool.java:174)

这是在更改xml文件后在Solr中重新加载核心的正确方法吗?

更新:我的一个密钥空间之前使用的是NetworkTopologyStrategy . 将此修复为SimpleStrategy . 现在所有的键空间都在数据中心Solr中具有SimpleStrategy . 执行相同的命令后,出现此错误 .

brsblcdb012:/apps/apg-data.cassandra/bin ./dsetool reload_core vin_service_development.vinid_search1 reindex=true solrconfig=solr.xml
org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException: Error in xpath:/config/luceneMatchVersion for solrconfig.xml
        at org.apache.solr.client.solrj.impl.HttpSolrServer.executeMethod(HttpSolrServer.java:665)
        at org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:303)
        at org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:294)
        at com.datastax.bdp.tools.SearchDseToolCommands.createOrReloadCore(SearchDseToolCommands.java:383)
        at com.datastax.bdp.tools.SearchDseToolCommands.access$200(SearchDseToolCommands.java:53)
        at com.datastax.bdp.tools.SearchDseToolCommands$ReloadCore.execute(SearchDseToolCommands.java:201)
        at com.datastax.bdp.tools.DseTool.run(DseTool.java:114)
        at com.datastax.bdp.tools.DseTool.run(DseTool.java:51)
        at com.datastax.bdp.tools.DseTool.main(DseTool.java:174)

现在推荐的改变是什么?

1 回答

  • 2

    总结一下对话:

    密钥空间复制配置最初是错误的(更新为SimpleStrategy RF2):

    您的节点现在位于数据中心的“Solr”中,但您的一个键空间配置了NetworkTopologyStrategy和一个引用“datacenter1”的复制因子 .

    您不小心用错误的XML替换了您的solrconfig,导致此错误 . 要解决此问题,您可以重新创建solr核心 .

    在DSE 4.8中,您可以使用unload_core删除solr核心并重新创建它 . 如果在较旧的DSE版本中,您可以关注“Remove core from Datastax Solr” .

相关问题