SharePoint 2010 + SP2. 2 WFE + 3 App servers. 1 App server work as indexer. Till couple of days back, incremental crawl was taking few minutes. And then the last incremental crawl is running for more than two days. I got this checked:

There was no database disk space issue. I did not want to stop the crawl. I wanted to troubleshoot it.

This is quite an old post and I do not see why couple of days back this may kick in:

In my case I do not have quick access to database. I cannot run perfmon on the database. I cannot monitor the database. For getting information about database, I have to create a ticket for the database team and wait.

While looking for clues, I found that the following error occurs in app server (index server). However, that error has been occurring for a while: Event Id 6482:

Application Server Administration job failed for service instance Microsoft.Office.Server.Search.Administration.SearchServiceInstance (ea968194-a5d6-4d15-b5d6-73f3d1f7da9a).

Although these errors seem unrelated, I decided to get rid of the error:

The above indeed cleared out the error. I did clear the SharePoint config cache on all the farm servers. But it did not bring the search crawler back to life. So, eventually, although I did not like it, I decided to restart the search service on the index server. And boom, the incremental crawl came back to life and completed in another 15-30 minutes or so.
So what caused the problem? I don’t know. However, I tool some preventative measures. I wrote a small PowerShell script that will warn me if the incremental crawl runs for more than 30 minutes and will send me an alert email.

My technet forum discussion is @