I recently struck an unusually issue with a Search not working on some Web Applications on a Small Business Server 2011 running SharePoint 2010 Foundation. While some web applications worked, others would return this error in the search results page:
Your search cannot be completed because of a service error. Try your search again or contract your administrator for more information.
To isolate the issue I fired up ULSviewer to monitor the SharePoint log files and found a critical error. The following log message appear in few lines above the Critical error and helped identify the issue:
Exception thrown: 0x80070005 (d:\office\source\search\native\ytrip\tripoli\common\crequest.cxx)
Error 0x80070005 translates to “Access Denied”. The question was what is causing this? After a bit of digging around I found the issue was the Application Pool account for the SharePoint web application.
The solution was to change from “Network Service” to a Domain Account with rights to access the Content Database and local disk (Cache file location).