SharePoint Crawl – Processing this item failed because of a timeout when parsing its contents

when you get this error first make sure you have enough resources (Ram, CPU, and Storage) on all farm servers participating in the crawl.

make sure this settings are set to the default settings :

C:Program FilesMicrosoft Office Servers15.0SearchRuntime1.0noderunner.exe.config

MEMORY ORIGINAL “nodeRunnerSettings memoryLimitMegabytes=”0″”

run the following power shell to change this settings :

Set-SPEnterpriseSearchService -PerformanceLevel Reduced

restart the search service

 

one other option is to lower the size of files crawl will skip the default is 64 mb

$searchapp = Get-SPEnterpriseSearchServiceApplication 
#check the current value; default should be 64
$searchapp.GetProperty(“MaxDownloadSize”) 
# Change the default size to 15 MB
$searchapp.SetProperty(“MaxDownloadSize”, 15) 
$searchapp.Update() 
!! restart services 

 

Creates a new crawl component for the given topology and search service instance.

$si = Get-SPEnterpriseSearchServiceInstance
$ssa = Get-SPEnterpriseSearchServiceApplication
$topology = Get-SPEnterpriseSearchTopology -SearchApplication $ssa
New-SPEnterpriseSearchCrawlComponent -SearchTopology $topology -SearchServiceInstance $si -SearchApplication $ssa

ref:

https://sharepoint.stackexchange.com/questions/200175/sharepoint-2013-search-crawl-error

https://www.toddklindt.com/blog/Lists/Posts/Post.aspx?ID=215

https://docs.microsoft.com/en-us/powershell/module/sharepoint-server/New-SPEnterpriseSearchCrawlComponent?view=sharepoint-ps

https://docs.microsoft.com/en-us/sharepoint/search/best-practices-for-crawling

https://stuffandtacos.azurewebsites.net/2015/11/05/sharepoint-slow-search-crawling-rate-and-low-document-per-seconds-indicator/