Showing posts with label Sharepoint 2010. Show all posts
Showing posts with label Sharepoint 2010. Show all posts

Tuesday, February 25, 2014

SharePoint 2010 search overview

Search is one  of the core component of the SharePoint Platform . Recently we have seen hell lots of issues in our farm .While troubleshooting those issues I learnt the below points regarding SharePoint search which I feel like to share .
SharePoint Search is comprised of three main functional process components:
Crawling (Gathering): Collecting content to be processed
Indexing: Organizing the processed content into a structured/searchable index
Query Processing: Retrieving a relevant result set relative to a given user query
How Search Works :
A server running a SharePoint Search Crawl Component (e.g. a “Crawl Server”) performs the act of crawling by making web requests such as HTTP GET to the applicable web front ends (WFEs) hosting the hosting the content. More simplistically, the Crawler makes requests for content and the WFE responds with the requested documents/pages/data. After the content has been gathered by the Crawler, it then gets filtered and processed into the final end product as an index. Regardless of SharePoint Search or FAST Search for SharePoint 2010, the component responsible for crawling (aka “gathering”) content-to-be-indexed is the SharePoint Crawl Component.
By default, the SharePoint Server 2010 crawler crawls all available Web front-end computers in a SharePoint farm through the network load balancer in that farm. Therefore, when a crawl is occurring, the crawler can cause increased network traffic, increased usage of hard disk and processor resources on Web front-end computers, and increased usage of resources on database servers. Putting this additional load on all Web front-end computers at the same time can decrease performance across the SharePoint farm.
This decrease in performance occurs only on the SharePoint farm that is serving user requests, and not on the SharePoint search farm. This decreased performance can cause delayed response times on the Web front-end computers and delayed response times for the overall farm. The decreased performance might not be diagnosed by specific logs, resource counters, or standard monitoring.
You can reduce the effect of crawling on SharePoint performance by doing the following:
·         Redirect all crawl traffic to a single SharePoint Web front-end computer in a small environment or a specific group of computers in a large environment. This prevents the crawler from using the same resources that are being used to render and serve Web pages and content to active users.
·         Limit search database usage in Microsoft SQL Server 2008 R2, SQL Server 2008 with Service Pack 1 (SP1) and Cumulative Update 2, and SQL Server 2005 with SP3 and Cumulative Update 3 to prevent the crawler from using shared SQL Server 2008 R2, SQL Server 2008 with SP1 and Cumulative Update 2, and SQL Server 2005 with SP3 and Cumulative Update 3 disk and processor resources during a crawl.

Enumerating Content from the WFE
Assuming http://foo:80 as the URL of a Web Application in a SharePoint Farm and a Search Content Source specifies that specifies this start address http://foo, the Crawl Component would gather items from this content source by essentially browsing each item from the web server hosting this content. When starting the crawl of SharePoint content, the Crawler would first look for http://foo/robots.txt to determine if any items are being disallowed. It then browses the default page for the URL and from the response, looks for the response header ‘MicrosoftSharePointTeamServices’. If this response header does not exist, the crawler will proceed as if this were generic web content and perform a “spider crawl”. If the response header does exist, then the SharePoint crawler begins enumerating all of the items in this site by targeting the Site Data web service for this URL - in this case, http://foo/_vti_bin/sitedata.asmx. Simplistically, the Crawler leverages the Site Data web service to ask the WFE, “Hey, WFE… what content do you have for this URL?” The Crawler stores the enumerated items into a queue and then begins retrieving each of the items from the WFE.
More specifically, the Crawler enumerates the content through a series of iterative SOAP calls through the Site Data web service. It first asks the WFE, “For this URL [Virtual Server], what Content Databases do you have?” Through a SOAP response, the WFE enumerates the applicable Content DB[s] along with the identifying GUID for each content DB. The Crawler then asks the WFE, “For the Content DB with the GUID [XYZ], what Site Collections do you have?” Again, the WFE responds with another SOAP response containing each of the Site Collection[s] along with other metadata applicable to each Site Collection. The Crawler and WFE continue this conversation to drill down on each of the Webs (e.g. the Top level site and all sub-sites) in the Site Collection, each of the lists/libraries in a Web, and items from lists/libraries have been enumerated for the URL.

It’s worth noting that for a Full Crawl, all of the items within this Web Application will be enumerated and queued by the Crawler for processing. However, with an Incremental Crawl, the Crawler will also pass along a Change Log Cookie (that it received from the WFE on the previous crawl) to the WFE. A Change Log Cookie would resemble the following 1;0;5e4720e3-3d6b-4217-8247-540aa1e3b90a;634872101987500000;10120 and contains both the identifying GUID for the applicable Content DB (in this case, 5e4720e3-3d6b-4217-8247-540aa1e3b90a) as well the row ID from the EventCache table (e.g. row 10120) in the specified Content DB. With this, the WFE can identify all events that have occurred for this Content DB since this point and thus, identify any content that has changed since the last crawl.

Thursday, February 13, 2014

Server error occurred while clicking on workflow properties or Workflow settings in the SharePoint site.

From ULS logs I found the below actual error message :

User cannot be found
Troubleshoot issues with Microsoft SharePoint Foundation.
Correlation ID: 519442d6-a684-9456-4d94da871808

Resolution :

The issue is fixed on Disabling and Enabling the “Publishing Approval Workflow “


Wednesday, February 12, 2014

How to fuse the events of multiple calendar in a single calendar in SharePoint 2010

This can be achieved using the Calendar Overlay option .

Steps:-
           
·         Let us consider we have three calendars – Calendar 1, Calendar 2, Calendar 3 and we want to fuse events of all the three onto Calendar 1 and also with unique color for events from each calendar .

·         We go to Calendar 1. And select the ‘Calendars Overlays’ feature from the top ribbon as follows:-


·         We click on ‘New Calendar’ option in Calendar Overlay Settings page.

·         We fill in the required details as follows:-

Calendar Name, Type should be ‘Sharepoint’, Color can be chosen from the dropdown, Web URL refers to the site in which the calendar is. Once done, click on Resolve. This  will populate  all the calendars and their corresponding views for the last two options. After resolving, select the appropriate calendar and its view to be shown [from the respective dropdowns] – check in the ‘Always show’ option then finally click on Ok.

Finally, if we come to Calendar 1, we would be able to see the events from three calendars collated into a single one.

Previous View [separate events in three calendars ]


Current View after collation


Tuesday, February 11, 2014

Code blocks are not allowed in this file.

Issue : While opening a document library the below error is throwing



Reason : Customization done on the default page using Sharepoint designer .

Resolution : Replace the default.aspx page .

Friday, January 31, 2014

Navigation' and 'Manage Content and Structure' options throwing error

Content and Structure in Sharepoint 2010 helps to copy ,move and delete the files within the site collection . The Site Content and Structure page is available in Site collections where Publishing is turned on. 
Steps to access content and structure :



ISSUE:
When clicking on Manage Content and Structure under Site Administration , we get a 'File not Found' error:




This is usually caused due to a corrupt list or a dysfunctional subsite on the site. It can be resolved by deleting the corrupt list or subsite. (Take the required approvals if necessary)


RESOLUTION:

To find the corrupt list:

The below command will give the list of all lists on the site and their GUID
$url = http://xxx/sites/<sitename>
$web = Get-SPWeb $url
$web.Lists | SELECT Title,ID

Using the GUID of the list , append it to the link  http://sharepoint/_layouts/listedit.aspx?List=
If it throws an error, the list is corrupted. Delete the corrupted list using force.

(Stsadm –help forcedeletelist)


To find the dysfunctional sub site:

Click on sites on the viewlsts page to find the dysfunctional subsites. Delete these subsites using force

(stsadm -o deleteweb -force -webid <webid of the subsite>)


Wednesday, January 29, 2014

Term store creation

There are two level’s of term store management :

1.       Local ( Site collection Level ) :Site Collection Administrator access required .

2.       Global ( Central administration level ) :Term store administrator access required .

    Steps to create Term Store at Local level :

  •        Go to site sittings then Site columns
  •        Create a new custom column with column type as “Managed metadata”
  •        And also Select Under term Set settings [ on the same page ] , Select customize your term set,  provide  some description to the Term set and Click on Edit Using term set manager.
  •        This will take us to a Site collection [Local] Term store management page and From here by using Create Term or Reuse term we can create Terms.






d