No active slice servicing hash code" when writing Ranger Audits to Solr

場景介紹:中國裁判文書網hadoop集羣中有一臺機器由於磁盤損壞致使機器宕機,該機器上面的全部服務都不可用。在對這臺機器從新安裝系統和對應的服務後,從新加入Hadoop集羣,這是須要slave9上從新添加core而後頂替以前宕掉的salve9對應的shard,可是因爲在新的slave9上添加core時,沒有備份zookeeper中solr對應clusterstatus.sh文件的內容,致使新的slave9的core對應的shard的ranger的值爲null;在添加完新的slave9的core後,在solr admin的界面上測試添加,刪除和查詢都是沒有問題的,可是solrj接口查詢數據的時候就出現不能插入的問題,報錯:org.apache.solr.common.SolrException: No active slice servicing hash code" when writing Ranger Audits to Solr。後來查詢solr的router規則原理後找到了解決方法:html

解決步驟以下:java

1.使用鏈接zookeeper的工具ZooInspector,連上zookeeper後apache

2.找到solr配置文件的clusterstatus.sh配置文件工具

3.而後找到slave9對應的shard4_0,而後修改ranger和parent參數oop

ranger的範圍賦值:0-7fffffff測試

parent:shard4code

4.而後報存就能夠了。router

 

參考:htm

博客:https://community.hortonworks.com/content/supportkb/155362/errorimplcloudsolrclient-cloudsolrclientjavareques-1.html接口

solr的路由規則:https://lucidworks.com/2013/06/13/solr-cloud-document-routing/

相關文章
相關標籤/搜索