Friday, March 6, 2015

SharePoint Server Search "Error Stopping" in SharePoint 2013

I have no idea but one day i saw SharePoint Server Search "Error Stopping" in SharePoint 2013 server. I have 4 servers running but it only happened to APP1 server. After keep searching in google. I saw many of blog are posting difference solutions. But all of solutions didn't work for me as they mentioned. Finally I managed in this way.

1. make sure "SharePoint server search" is running

$ss1 = get-spenterprisesearchserviceinstance -local
Stop-spenterprisesearchserviceinstance $ss1
Start-spenterprisesearchserviceinstance $ss1

Or try second option as bellow... 

Run these steps 
open the power-shell and run this command 

Get-SPServiceInstance | ? {$_.TypeName -eq "Search Host Controller Service"}

Then You will see the list of servers that are running

Server : SPServer Name=WFE1
HostControllerURL : net.tcp://WFE1/ceres/hostcontroller/nettcp
RepositoryVersion : 0
PrimaryHostController : True
SearchServiceInstanceId : 43d4837c-b0c6-42e1-93ff-c8b872854be7
Server : SPServer Name=WFE2
HostControllerURL : net.tcp://WFE2/ceres/hostcontroller/nettcp
RepositoryVersion : 0
PrimaryHostController : False
SearchServiceInstanceId : 6d02e4ab-bfb9-442f-8a29-705274ec8262
Server : SPServer Name=WFE3
HostControllerURL : net.tcp://WFE3/ceres/hostcontroller/nettcp
RepositoryVersion : 0
PrimaryHostController : False
SearchServiceInstanceId : 98d9cc05-92d6-4e2a-b872-3bd7d22f33a4

I stopped and started it by running these two commands:

Stop-SPServiceInstance -Identity 98d9cc05-92d6-4e2a-b872-3bd7d22f33a4
Start-SPServiceInstance -Identity 98d9cc05-92d6-4e2a-b872-3bd7d22f33a4
Hopefully its work for you as well.


Search Host Controller Service in "Starting" state

I saw Search Host Controller Service in "Starting" state in my newly installed SharePoint 2013 servers. and I cant even start it manually. after goggling i saw so many blogs was posting few difference power-shell commands to solve that issue as bellow. But make sure you have to do few steps.


1. Make sure that start these three services. If you cant see the those service installed, make sure run prerequisites again. (In my case, I saw that I haven't done complete Prerequisites steps.)


2. Run this powershell command after you complete step one

$SA = Get-SPServiceInstance | Where {$_.Status -like “Provisioning”}
$SA.Unprovision()

$SA.Provision()

Or



$inst = Get-SPServiceInstance | ? {$_.TypeName -eq "Search Host Controller Service" } | ? { $_.PrimaryHostController -eq $true }
$sh = Get-SPServiceInstance | ? {$_.SearchServiceInstanceId -eq $inst.SearchServiceInstanceId.ToString()}
$sh.Status
$sh.Unprovision()
$sh.Status
$sh.Provision()
$sh.Status