SharePoint 2010 Search result Not found documents for a specific library in specific SharePoint site

Hi All,

I came across a situation where user is trying to search documents selecting the option “search in same site” instead of “all sites” from  search box and getting no result where as can find documents from other library with in same site.

Why such happens ?

The first point comes to mind for search error is  content not crawled, indexing not done for this situation.

Yes , its true but we need to think why  ?

As per my investigation I found the setting of the library as below

Draft-items-are-not-crawled-in-SharePoint

By default SharePoint only crawls major versions of files and draft items are only viewable by their creators. SharePoint is behaving as expected out of box.Draft items are not crawled in SharePoint

Resolution :

This behavior can be altered in Document Library Settings -> Versioning Settings -> Draft Item Security

Select the option “Any user who can read items”.

This will allow all users to see draft items including the crawling account.

  • Else you need to select “Create major versions” option or can publish the documents as major versions if want to get those documents in search result as per client wish.

https://support.microsoft.com/en-us/help/2304855/draft-items-are-not-crawled-in-sharepoint

Advertisements

search diagnostics and reports sharepoint

We can access and analyze several query and crawl health reports, logs and usage reports from the Search service application in the SharePoint Central Administration to monitor the health of the search system.

The health reports and logs only contain information after a full crawl has completed. To run a full crawl, we have to set up a Search service application, add at least one content source, and then start a full crawl.

To view the health reports and the crawl log, one have to be an administrator of the Search service application. Alternatively, an administrator who is a member of the Farm Administrators group can grant user accounts Read permissions on the Search service application. A user account that has Read permissions can only view the Search service application status page, the health reports and the crawl log.

Query health reports:

  1. Trend
  2. Overall
  3. Main Flow
  4. Federation
  5. SharePoint Search Provider
  6. People Search Provider
  7. Index Engine

To view query health reports:

  1. Verify that the user account that is performing this procedure is an administrator of or has Read permissions to the Search service application.
  2. In Central Administration, under Application Management, click Manage service applications.
  3. On the Service Applications page, click the Search service application.
  4. On the Search Administration page, in the Quick Launch, in the Diagnostics section, click Query Health Reports.
  5. On the Search Service Application: Query Latency Trend page, click the query report that you want to view.

The following table shows which reports are available.

query-health-report

Crawl health reports:

SharePoint 2013 provides the following reports about crawl health:

  1. Crawl Rate
  2. Crawl Latency
  3. Crawl Queue
  4. Crawl Freshness
  5. Content Processing Activity
  6. CPU and Memory Load
  7. Continuous Crawl

To view crawl health reports

  1. Verify that the user account that is performing this procedure is an administrator of or has Read permissions to the Search service application.
  2. In Central Administration, under Application Management, click Manage service applications.
  3. On the Service Applications page, click the Search service application.
  4. On the Search Administration page, in the Quick Launch, in the Diagnostics section, click Crawl Health Reports.
  5. On the Search Service Application: Crawl Reports page, click the crawl health report that you want to view.

The following table shows which reports are available.

crawl-health-report

Crawl log:

The crawl log tracks information about the status of crawled content. This log lets you determine whether crawled content was successfully added to the index, whether it was excluded because of a crawl rule, or whether indexing failed because of an error. The crawl log also contains information such as the time of the last successful crawl and whether any crawl rules were applied. You can use the crawl log to diagnose problems with the search experience.

To view the crawl log

  1. Verify that the user account that is performing this procedure is an administrator of the Search service application, or has Read permissions to it.
  2. In Central Administration, under Application Management, click Manage service applications.
  3. On the Service Applications page, click the Search service application.
  4. On the Search Administration page, in the Quick Launch, in the Diagnostics section, click Crawl Log.
  5. On the Crawl Log – Content Source page, click the view that you want.

crawl-log-views

Additional columns in the Content Source, Host Name and Crawl History views:

content-source-host-name-crawl-history-view

Usage reports (search report):

To view usage reports

  1. Verify that the user account that is performing this procedure is an administrator of or has Read permissions to the Search service application.
  2. In Central Administration, under Application Management, click Manage service applications.
  3. On the Service Applications page, click the Search service application.
  4. On the Search Administration page, in the Quick Launch, in the Diagnostics section, click Usage Reports.
  5. On the View Usage Reports page, click the usage or search reports view that you want view.

usage-report-search-report

 

Internal server error exception when users perform a search in SharePoint

Symptoms

When users perform a search in a Microsoft SharePoint environment, they receive the following error message:

Internal server error exception:

Troubleshoot issues with Microsoft SharePoint Foundation

Additionally, the following critical exception may be written to the ULS log of the SharePoint Web front-end server:

Process: OWSTIMER.EXE (0x1CE0)

Product: SharePoint Foundation

Category: Topology

EvendID: 8031

Message:
An exception occurred while updating addresses for connected app {eaf6c00c-cc3f-460e-8bf2-ad9b991ea6ea_aa16845d-045a-46bc-bbc6-d701ff13950d}. The uri endpoint information may be stale. System.InvalidOperationException: The requested application could not be found at Microsoft.SharePoint.SPTopologyWebServiceApplicationProxy.ProcessCommonExceptions(Uri endpointAddress, String operationName, Exception ex, SPServiceLoadBalancerContext context) at Microsoft.SharePoint.SPTopologyWebServiceApplicationProxy.ExecuteOnChannel(String operationName, CodeBlock codeBlock) at Microsoft.SharePoint.SPTopologyWebServiceApplicationProxy.GetEndPoints(Guid serviceId) at Microsoft.SharePoint.SPConnectedServiceApplicationAddressesRefreshJob.Execute(Guid targetInstanceId) bf94139a-66f8-4aab-af31-406a5ebb6db9

Cause

This issue occurs when the Search service application proxy is associated with a web application but is not associated with any Search service applications in the farm.

Resolution

To allow users to search without receiving this error message, reassociate the web application with a valid Search service application proxy. A valid Search service application proxy will be associated with a Search service application in the Manage service applications option. To do this, follow these steps:

  1. Open Central Administration.
  2. Click Manage web applications.
  3. Select the affected web application.
  4. On the ribbon, click Service Connections.
  5. Under Configure Service Application Associations, select the valid Search service application proxy check box.

bini

How to reset a corrupt search index in SharePoint 2013 in case the reset index is not working

On a recent SharePoint 2013 deployment, I faced a strange issue, wherein the search index got corrupted and I was not able to reset the index. Although, I was able to get to the reset index screen and the reset index button was clickable, but each time it went into an infinite loop on clicking the reset index button, and the index was not reset.

After much banging our heads and googling around, I found a small piece of information that really helped and did the trick. Below is a step-wise approach to resolve such an issue.

Step-1
Stop the Windows SharePoint Services Timer service

timer

Step-2
Navigate to the cache folder in the following location: System Drive:ProgramDataMicrosoftSharePointConfig

Step-3
Locate the folder that has the file “Cache.ini”. There may be multiple GUID folders with cache.ini file

Step-4
Back up these folders with the Cache.ini file

Step-5
Delete all the XML configuration files in the GUID folder
Note: When you delete the xml files within the GUID folders, make sure that you do not delete the GUID folder and the Cache.ini file that is located in the GUID folder

xmlfiles

Step-6
Open the Cache.ini file and delete the content, replacing all the text with the number ’1′. Save the file and close
Step-7
Start the Windows SharePoint Services Timer service
After the above steps have been executed, make sure that the Cache.ini file contains some other value and not 1

resetcache

How to Fix SharePoint 2013 Slow Performance

You may have noticed that the hardware requirements for SharePoint 2013 Server are quite hefty. Many SharePoint 2013 performance issues have been attributed to lack of resources.  Although meeting the minimum performance specs is highly recommended, you can tweak SharePoint 2013 to work with less resources.

The following tips are some that I have collected while looking for ways to improve SharePoint 2013 performance. Some of these will help SharePoint’s performance however, my experience has been that unless you have a server that meets the minimum SharePoint 2013 requirements, the Search function will still bring your SharePoint server to a crawl.

The only way that I have been able to run SharePoint efficiently on a less than ideal server is to completely disable the search feature.

If however, you want to try and tweak SharePoint before completely turning off the search service, be aware that performance results will vary depending on your server’s RAM and CPU speed.

Before You Begin: Stop/Disable the SharePoint 2013 Search Service

If your SharePoint 2013 is running like a 3 legged turtle, temporarily disable the Search Host Controller and the Search Server. This will render your SharePoint Server usable until you complete these tasks. Note: The SharePoint Timer Service will re-start both the Search Host Controller and the Server Search service, so you may want to temporarily disable the Timer Service as well.

The services to disable are SharePoint Search Host Controller and SharePoint Server Search 15. You can find these services by running services.msc from a command prompt. Once you have finished, don’t forget to enable them again.

Here are the steps to fix SharePoint 2013 performance issues

1. Update SharePoint 2013 March patch update

2. Reduce the search crawl time interval and properly configure SharePoint 2013 Search

3. Reduce Noderunner’s RAM utilization

4. Clear the search database and re-initialize the SharePoint 2013 search crawler

Update SharePoint with March 2013 Patch Update KB2767999

Updating SharePoint with the March 2013 Patches fixes search-related performance problems. Note that you should disable the SharePoint Timer Service first, then SharePoint Search Host Controller and the SharePoint Server Search before installing the updates. (Detailed instructions here)

· SharePoint Server 2013: http://support.microsoft.com/kb/2767999

· SharePoint Foundation 2013: http://support.microsoft.com/kb/2768000

How to Reduce the Search Feature Crawl Time Interval and Configure SharePoint 2013 Search

By default, the search feature is set to crawl every 20 minutes. This is nice if you have a monster server, but if you are not so lucky, reducing the crawl rate will yield much better performance. If the SharePoint server hosts a large content database, it may take more than 20 minutes to index. By the time the crawler is finished, it’s time to start again! This leaves you with a perpetually crawling indexing function.

To reduce the search index time interval:

Open Central Administration > General Application Settings > Farm Search Administration

Click on Search Service Application and then on the Content Sources menu link.

1 

2

Locate your site, click on the drop down menu and then select edit. In the start address, make sure that you have entries for your FQDN, your default Web as well as the SPS3 Protocol Handler. For example: if your SharePoint server’s NetBIOS name is SP01, then you should have an entry for http://SP01 and SPS3://SP01 in addition to your Web site FQDN. This is necessary for the search feature to properly work. If the search index does not properly work, continual searches will damper performance. Once search is working properly, server performance will greatly increase.

3

Next, set a full and incremental crawl schedule so that the crawl takes place during off-peak usage times. The older your server, the less frequent you may want to make the crawls.

4

Once you have finished, click OK to save the changes.

How to Reduce noderunner.exe’s RAM Utilization

On the SharePoint 2013 server, open Server Manager -> Tools -> Windows PowerShell ISE

5

Click File -> Open and navigate to

C:Program FilesMicrosoft Office Servers15.0SearchRuntime1.0

Open noderunner.exe.config

If you cannot see noderunne.exe.config, click on the drop down next to file name and select All Files (.)

6

Modify the following line:


7

Noderunner.exe is set to “0” by default, which means unlimited memory usage. Change the “0” to a number in megabytes to limit the total amount of ram that it can use.

For example:

Click save and exit. Restart the SharePoint server.

You can greatly increase SharePoint 2013 server performance by stopping the following services:

· SharePoint Search Host Controller

· SharePoint Search Server 15

Of course, this should be done if you are not using the search service. If you are, this may not be an option.

If that’s the case, your best option may be to increase your server’s available RAM to meet or exceed the minimum requirements. You can also mitigate the performance effects caused by the search service if you reduce the amount of Ram available to noderunner.exe however this is less desirable than stopping the search services.

Reset the Search Index and Initialize a Full Crawl

Finally, re-initialize the search index to clear out the database and re-initialize the crawl. To do this, go to Central administration –> General Application Settings –> Farm Search Administration –> Search Service Application. Select Index Reset from the crawling menu and then click on the reset now button.

Once you have reset the index, click on content sources and select start all crawls.

8

Administer search in SharePoint Server 2013

Manage the search schema in SharePoint Server 2013  

Learn how to view, add, edit, map, and delete crawled properties, crawled property categories and managed properties in the search schema.

Manage the Search Center  

Learn about pages that are created in a Search Center site in SharePoint 2013, and see articles about how to configure Web Parts.

Manage search relevance in SharePoint Server 2013  

Learn how you can configure settings to provide the most relevant search results.

 

Manage crawling in SharePoint Server 2013

  Learn how to crawl content that you want users to be able to search for in SharePoint 2013.
 

Manage the search topology in SharePoint Server 2013

Learn how to manage search components to scale out the search topology in SharePoint 2013.
 

View search diagnostics in SharePoint Server 2013

Learn about search and usage reports, query health reports, crawl health reports and the crawl log to analyze the health of the search system.
 

Enable search alerts in SharePoint Server 2013

Learn how to enable or disable search alerts.
 

Enable query logging in SharePoint Server 2013

Learn how to enable or disable query logging.
 

Export and import customized search configuration settings in Sharepoint Server 2013

 

Learn how to import and export customized search configuration settings.

Configure properties of the Search Box Web Part

When you create an Enterprise Search Center site collection as described in Create a Search Center site in SharePoint Server 2013, SharePoint 2013 creates a default search home page and a default search results page. In addition, several pages known as search verticals are also created. Search verticals are customized for searching specific content, such as People, Conversations, and Videos, and they display search results that are filtered and formatted for a specific content type or class.

The following pages are created in an Enterprise Search Center site collection:

  • default.aspx: the home page for the Search Center, and the page where end-users enter their queries.
  • results.aspx: the default search results page for the Search Center. It is also the search results page for the Everything search vertical.
  • peopleresults.aspx: the search results page for the People search vertical.
  • conversationresults.aspx: the search results page for the Conversations search vertical.
  • videoresults.aspx: the search results page for the Videos search vertical.
  • advanced.aspx: the search page where end-users can apply some restrictions to their search phrases — for example, limiting the search to an exact phrase.

These pages are located in the Pages library, and they contain Web Parts that you can customize to improve the end-user search experience. This article describes the Web Parts on these pages, and how you can configure the different Web Parts settings to improve how search results are displayed.

By default, the Web Parts on the search vertical pages (results.aspx, peopleresults.aspx, conversationresults.aspx, videoresults.aspx, advanced.aspx) are the same. However the query in the Search Results Web Part is configured differently for each search vertical page. For each search vertical page, the query in the Search Results Web Part is directed to a particular result source. This can be a result source that defines the search vertical or any result source that you want to direct queries to when you create a custom search vertical. For example, for the peopleresults.aspx search vertical page, the query in the Search Results Web Part is limited to the Local People Results (System) result source. For the videoresults.aspx search vertical page, the query in the Search Results Web Part is limited to the Local Video Results (System).

By default, the Search Box Web Part is used on the home page for the Search Center (default.aspx), and all search results pages (results.aspx, peopleresults.aspx, conversationresults.aspx, videoresults.aspx). By changing properties in the Search Box Web Part you can you can do the following:

  • Change the Web Part or page where the search results should be displayed — for example, a custom Search Results Web Part or a custom search results page.
  • Turn off query suggestions and people suggestions. For more information about query suggestions, see Manage query suggestions in SharePoint Server 2013
  • Display links to a search preference page and an advanced search page.
  • Change the display template that is applied to the Web Part.

To configure the properties of a Search Box Web Part      

  1. Verify that the user account that performs this procedure is a member of the Designers SharePoint group on the Enterprise Search Center site.
  2. On the Search Center site home page, click the Settings menu, and then click Edit Page.
  3. In the Web Part, click the Search Box Web Part Menu arrow, and then click Edit Web Part.
  4. In the Web Part tool pane, in the Properties for Search Box section, expand the Which search results page should queries be sent to section, and then do the following:
    • To display the settings that are defined on the Search Settings page, select the Use this site’s Search Settings check box.
    • To override the settings that are defined on the Search Settings page, clear the Use this site’s Search Settings check box, and then do the following:
      • To display search results in a Web Part on the page, in the section Send queries to other Web Parts on this page, select a Web Part.
      • Note:
        If there are no other Web Parts on a page, search results will be sent to the search results page as specified on the Search Settings page.
    • To send queries to a custom search results page, select Send queries to a custom results page URL, and then type the URL of the custom search results page.
    • Note:
      You can’t send queries to a custom search results page that uses a friendly URL.
  5. In the Web Part tool pane, in the Properties for Search Box section, expand the Query Suggestions section, and then do the following:
    • To disable query suggestions, clear the Show suggestions check box.
    • To specify additional properties for query suggestions, change the values in the following fields:
      • Number of query suggestions: How many query suggestions to display.
      • Minimum number of characters: How many characters the user must type before query suggestions are displayed.
      • Suggestions delay (in milliseconds): How many milliseconds elapse before query suggestions are displayed.
      • Number of personal favorites: How many query suggestions are displayed to the user under the text Are you looking for these again? in the search results. These suggestions are based on search results that the user has clicked previously. To disable personal favorite results, clear the Show personal favorite results check box.
    • To turn on people name suggestions, select Show people name suggestions.
  6. In the Web Part tool pane, in the Properties for Search Box section, expand the Settings section, and then do the following:
    • To show a link to a search preference page, select Show preferences link.
    • To show a link to an advanced search page, select Show advanced link, and then in the Advanced search page URL box, type the URL of the advanced search page that you want to link to.
    • To apply another display template, in the Search box control Display Template list, select the display template that you want to apply to the Web Part.
    • Select the Make the search box have focus when the page is loaded check box to make it possible for users to immediately type a query in the search box when the page is loaded without first having to click the search box. By default, this is selected.

Configure properties of the Search Results Web Part in SharePoint Server 2013

Configure properties of the Refinement Web Part in SharePoint Server 2013

Configure properties of the Search Navigation Web Part in SharePoint Server 2013