如何在拆分Solr的云Solr的碎片 [英] How to Split solr shard in solr cloud
本文介绍了如何在拆分Solr的云Solr的碎片的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我使用Solr的4.10.3在solrCloud模式。我有一个碎片和3个复本。外部动物园管理员在合奏中使用。我在一个索引文件已经增加太多。现在我想创造更多的碎片。我尝试使用
<$p$p><$c$c>http://localhost:8983/solr/admin/collections?action=SPLITSHARD&collection=collection1&shard=shard1但它提供了以下错误
收集错误执行拆分操作:collection1父碎片:shard1
显示java.lang.NullPointerException
在org.apache.solr.cloud.OverseerCollectionProcessor.splitShard(OverseerCollectionProcessor.java:1288)
在org.apache.solr.cloud.OverseerCollectionProcessor.processMessage(OverseerCollectionProcessor.java:563)
在org.apache.solr.cloud.OverseerCollectionProcessor $ Runner.run(OverseerCollectionProcessor.java:2629)
在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
在java.util.concurrent.ThreadPoolExecutor中的$ Worker.run(ThreadPoolExecutor.java:617)
在java.lang.Thread.run(Thread.java:745)
专辑:collection1操作:splitshard失败:org.apache.solr.common.SolrException
在org.apache.solr.cloud.OverseerCollectionProcessor.splitShard(OverseerCollectionProcessor.java:1569)
在org.apache.solr.cloud.OverseerCollectionProcessor.processMessage(OverseerCollectionProcessor.java:563)
在org.apache.solr.cloud.OverseerCollectionProcessor $ Runner.run(OverseerCollectionProcessor.java:2629)
在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
在java.util.concurrent.ThreadPoolExecutor中的$ Worker.run(ThreadPoolExecutor.java:617)
在java.lang.Thread.run(Thread.java:745)
显示java.lang.NullPointerException:产生的原因
在org.apache.solr.cloud.OverseerCollectionProcessor.splitShard(OverseerCollectionProcessor.java:1288)
空:org.apache.solr.common.SolrException
空:org.apache.solr.common.SolrException
在org.apache.solr.handler.admin.CollectionsHandler.handleResponse(CollectionsHandler.java:364)
在org.apache.solr.handler.admin.CollectionsHandler.handleSplitShardAction(CollectionsHandler.java:606)
在org.apache.solr.handler.admin.CollectionsHandler.handleRequestBody(CollectionsHandler.java:172)
在org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135)
问题出在哪里,什么是它的soultion?
解决方案
当你已经定义-DnumShards酒店SPLITSHARD只能用于=(某个值),当您启动集群第一次。
I am using solr 4.10.3 in solrCloud mode. I have one shard and 3 replica. external zookeeper ensemble in being used. My document in one index has been increase too much. Now I want to create more shards. I tries to use
http://localhost:8983/solr/admin/collections?action=SPLITSHARD&collection=collection1&shard=shard1
But it gives following error
Error executing split operation for collection: collection1 parent shard: shard1
java.lang.NullPointerException
at org.apache.solr.cloud.OverseerCollectionProcessor.splitShard(OverseerCollectionProcessor.java:1288)
at org.apache.solr.cloud.OverseerCollectionProcessor.processMessage(OverseerCollectionProcessor.java:563)
at org.apache.solr.cloud.OverseerCollectionProcessor$Runner.run(OverseerCollectionProcessor.java:2629)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Collection: collection1 operation: splitshard failed:org.apache.solr.common.SolrException
at org.apache.solr.cloud.OverseerCollectionProcessor.splitShard(OverseerCollectionProcessor.java:1569)
at org.apache.solr.cloud.OverseerCollectionProcessor.processMessage(OverseerCollectionProcessor.java:563)
at org.apache.solr.cloud.OverseerCollectionProcessor$Runner.run(OverseerCollectionProcessor.java:2629)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NullPointerException
at org.apache.solr.cloud.OverseerCollectionProcessor.splitShard(OverseerCollectionProcessor.java:1288)
null:org.apache.solr.common.SolrException
null:org.apache.solr.common.SolrException
at org.apache.solr.handler.admin.CollectionsHandler.handleResponse(CollectionsHandler.java:364)
at org.apache.solr.handler.admin.CollectionsHandler.handleSplitShardAction(CollectionsHandler.java:606)
at org.apache.solr.handler.admin.CollectionsHandler.handleRequestBody(CollectionsHandler.java:172)
at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135)
Where is the problem and what is its soultion?
解决方案
The property SPLITSHARD can only be used when you have defined -DnumShards=(some value) when you start you cluster first time.
这篇关于如何在拆分Solr的云Solr的碎片的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文