Sharing the experience search

Search sharing-the-experience.blogspot.com
Showing posts with label SharePoint 2007. Show all posts
Showing posts with label SharePoint 2007. Show all posts

Friday, March 28, 2014

Common mistakes in SharePoint 2013 Arhitecture

I am participating in the upgrade from SharePoint 2007 to  SharePoint 2013 on premises. It is nice to be back in upgrade work since it was my main activity last 6 years). This time it's a little bit different.
First of all, the upgrade is from SharePoint 2007 to SharePoint 2013. We do it through a transitional SharePoint 2010 farm.
And second of all, I wasn't involved in the architecture phase of building the farm. I jumped on the upgrade bandwagon just before the final prod upgrade. So, what I do mainly is  verifying that new farm is in the working conditions and testing once again the content migration.
Along the way I see how people built the farm and streamlined the upgrade process. It's a good experience to have to observe different style of working with SharePoint. I am free of making architectural decisions, but at the same time I am experienced enough to see outcome of decisions that were made by others.
This post is about my observations on common SharePoint 2013 architectural mistakes.

I can get "editing in the browser" feature with no additional configuration
No, you have to have 2 conditions to have Office Web Apps on the farm:
1. Office Web App server
2.  Claim based web application

You need to have OWA server. You can't place OWA on App server. It should be a dedicated server for Office Web App server.Plan for an additional server in the farm.
Office Web Apps can be used only by SharePoint 2013 web applications that use claims-based authentication


OWA server will handle all Excel calculation
Office Web Apps Server enables you to view workbooks that contain Data Models that use native data. However, you can’t explore data in items such as PivotTable reports, PivotChart reports, and timeline controls that use a Data Model as the data source.

Excel Web App runs in one of two modes:
SharePoint view mode   In this mode, Excel Services is used to view workbooks in the browser.
Office Web Apps Server view mode   In this mode, Excel Web App is used to view workbooks in the browser.

       Excel Services, and Excel Web App all have a lot in common, but they are not exactly the same. These applications can differ in what workbook features are supported for viewing in a browser

More on SharePoint 2013 architectural pain points

SP farm doesn't use SQL alias
 An old and common mistake. I have just recently jumped on the project after the farm was already configured. The first thing that makes me sick in the farm, that there is no alias for SQL.
So, in case you sql server dies and need to make sure that you name the new server the same way as previous one.

Monday, February 11, 2013

Simple concept: Property bag VS Hierarchical Object Store

[Question]: Ever wondered what the difference between Property bag and Hierarchical Object Store in SharePoint?

[Answer]: A nice and short (that how I like) article on that here - Where Should You Store Your SharePoint Solution’s Configuration Data?

The big discovery for me was that:

 Property bag is store in the content database;

 Hierarchical Object Store in the config database.

More on Managing Custom Configuration Options for a SharePoint Application

Thursday, October 11, 2012

SharePoint Limits

This is a very short post on SharePoint limitations.

Often when you negotiate software requirements for SharePoint project, you need to have at hand information what SharePoint cant' do and what it can (especially - Boundaries: Static limits that cannot be exceeded by design)

Here is few links that will help at least me to reach this info easily:

Software boundaries and limits for SharePoint Server 2013

SharePoint Online: software boundaries and limits (SP 2010 Online. At the moment of creation of this post we still have SP2013 in Preview)

SharePoint Server 2010 capacity management: Software boundaries and limits

Plan for software boundaries (Office SharePoint Server 2007) , and a short version of SharePoint 2007 Limits

And my old posts on:

Large list limits Sharepoint 2007/2010

"Column Limit Exceeded" Message When You Add a New Column to a SharePoint Services List

Happy analyzing to you!

Friday, June 22, 2012

SharePoint: SharePoint 2007 Administration and PowerShell 2.0



Last months my work with SharePoint 2007, I felt a strong inclination to use PowerShell 2.0.
I envied a happy people who were already with SharePoint 2010 and could enjoy SharePoint 2010 Administration via SharePoint.ps1


PowerShell and SharePoint: What, Why and How
Simple concept: How to use SharePoint cmdlets in PowerShell ISE


I also wanted to have such beautiful commands that have been shipped by SharePoint.ps1 for SharePoint 2010:
Get-SPFarm,
Get-SPWeb,
Get-SPWebApplication


So, my problem was that we don't have SharePoint.ps1 for SharePoint 2007.
To easy up my desire, I have created my functions:
Get-SPFarmV3,
Get-SPWebV3,
Get-SPWebApplicationV3.


And some additional:
Get-SitesWithMissingTemplate, Get-SSProvider, Get-SPVersionV3.


All above I have packed in one SPv3Adapter.mdl module.


Windows PowerShell Module Concepts


Module Installation Best Practices:


Do not install modules for Windows PowerShell in the system location at %Windir%\System32\WindowsPowerShell\v1.0\Modules. Only modules included with Windows are installed to the system location.


http://msdn.microsoft.com/en-us/library/dd878350(v=vs.85).aspx


Module installation
http://msdn.microsoft.com/en-us/library/dd878350(v=vs.85).aspx




And some additional PowerShell files:
Helper functions: Start-CustomTranscript, Get-CustomAPPLog,Get-SolutionDeployed


I have used a lot Get-SolutionDeployed during upgrade SP2007 to SP2010:


The module Helper.mdl has dependency on SPv3Adapter.mdl

Please install  SPv3Adapter.mdl  module first in order to enjoy Sp2007 helper functions.
One of the favorable option for me is to use manifest (you are welcome to use attached customModulesLoader.psm1 and  Manifest.mdl)  to ship the PS modules.


Thursday, June 21, 2012

SharePoint: How to build SharePoint application wrong. SharePoint Karma



Whenever I refer to SharePoint development strategies, I always end up with SharePoint deployment strategies.


I am aware that in SharePoint world there are people who prefer to do customization via SPD and without a traditional development cycle.


This post for others... who wants to preserve a development cycle and who wants to have a fully automated and predictable deployment:
- via wsp files (or sandbox solution)
- and specific actions (like a feature activation) which is shipped as  PowerShell\stsadm commands. (Best Practices: Sharepoint Application Development Life Cycle)


How do you choose between content customization and code-based approach?
If you need to deploy anything on the server, that's a sign that's your approach is code-based customization.


Here is a quick SharePoint karma guide for code-driven development for SharePoint. Each wrong action will lead to a specific strong deployment reaction.
All described actions I saw done by developers. I hope this quick guide helps you to avoid pain of SharePoint deployment.


Action: Create a site locally manually. And then develop some other features.
Reaction: Deployment will be hard to other environments. You will need to re-create a site manually and hope that you haven't skip any steps.
Recommended action: create a custom site definition(onet file).It was a recommended approach since 2007. But I heard it's not what will be recommended in SharePoint 15. In SharePoint 2010 you have 2 options:
 - a web template that is shipped via sandbox solution and placed in the content db;
 - a site definition that is shipped via wsp file and deployed on the server.
Custom web templates (the preferred approach) and custom site definitions (which in some scenarios you must do)


Action: Create stp to deploy first version of the site. You know that in the future you need to change the site structure.
Reaction: Once you have created a site from a template, there is no way you can change structure via stp
Recommended action: Use site definition and feature stapling approach for further releases. In SP2010 you can make the changes for some features that is shipped via site definition using Feature Upgrade


Action: Build a wsp, place in it only eventreceivers for specific list with expectation that the list will have appropriate structure (someone should change the structure of list and then register the eventreceiver)
Reaction: As you can guess by action, you will not have stable behavior on the environment,since half of the deployment should be performed manually. I can only hope that you keep your deployment documentation up to date.
Recommended action: If you need to develop an eventreciever for the list that should have specific fields or content type, you should describe the list in the list template feature. Package the list template, list template instance and eventreciever register features as a bundle in wsp file.

Action: Every time is time for deployment - create a new site as a blank site - and create all object manually, copy files from original site to the destination and than replace hard-coded id in the file - manually
Reaction: It's messy and prone to errors.  There is no way to make such site automatic deployable
Recommended action: consider best practices of SharePoint development, use packages to deploy and feature upgrade for further releases. In case you need make some data structure changes - use SharePoint object model, write the code and package as a ReleaseFeature ( Feature stapling). This approach will allow you to keep track of all your structure changes on the existing site, plus you still can use the site definition to create a new site, and after the creation the feature stapling will do change work as it did for the existing one.


Action:Write a code to send an email\interact with end-users without environment variables
Reaction: If you miss configuration settings for your interactive logic, you miss control over it. You may end up with end-user notification sent while you are testing the application.
Recommended action: Choose approach that suits your needs best:
- property bag on the specific object (site, list, item ,etc ) (One of the way how to handle the property bag - SharePoint Property Bag Settings 2010)
- hidden list with environment variables.


Action: Manually copy to the environment all custom master pages and customized OTB SPD web parts
Reaction: It's messy and prone to errors.  There is no way to make such site automatic deployable
Recommended action: Package master pages in a feature to deliver to the server.
Regarding OTB SPD web part -there is no easy way, since the web part holds the id of the specific object from where the data is pulled. So this object will not be valid on other environment ( but in case you have developed on the copy of the prod content db, you are fine)
We have decided to develop a custom feature receiver to deploy such web parts - File provisioning: a hard-coded list id replacement


Action: Deploy report files with data source - a list asmx with hard coded List ID
Reaction: If you developed the data source (a list) that doesn't have the same id as in prod, you will have to manually change the data source after deployment.
Recommended action: To make it transportable - you can think of msi installer with parameters to swap hard coded value to a new one.


Action: Create a site groups manually and have the logic that gets these groups by IDs
Reaction: It’s prone to errors. If someone delete the group and then create a new one with the same name. You hardcoded value in the logic will break.
Recommended approach: Try the approach:
- create custom code feature which creates the groups. In the logic verifies if the custom groups exist and the permissions for them are right. If the groups don't exist, re-created them in the code.

Action: Create your own field as a counter that looks at id and has some increment value in the config file. Every time user deletes the records, you have to change the increment value in the config file.
Reaction: What???
Recommendation: I saw such application that works several years in the Prod with regular request from developer to change the increment. Last time I have checked the increment was gravitating to number 42)).
So never do such thing. This is approach is plain wrong. If you need,for some reasons, to keep ids for list items in strict order and you don't want to skip a number even though the user deletes the item and your next SharePoint id will not be subsequent to previous one, consider:
- to create a calculated field;
- to implement event receiver on the updated\created to keep the counter up to date.


And overall bad actions:


Action: Developer's objection: “It’s working on my local machine, so it is supposed to work everywhere”
Reaction: Depends on how you thought about implementation plan (if any), you may end up with the code that will work nowhere except your local machine.
Recommendation: Before you start coding for SharePoint, think through how you see your changes will be deployed.


Action: Administrator's easy fix: “If on the feature on the Prod gives you a headache - uninstall  the feature”
Reaction: Some sites will may lose the functionality that they needed from uninstalled feature.
Recommendation: Analyze what uses this feature 



Action: Project manager accusation\question: "This is sign of careless and sloppy work. How can we fix it?"  
Reaction: A team will not collaborate to fix the issue since they are considered careless and lazy
Recommendation: Respect the work of others, be aware the world is not perfect, we are here to make it work at some extend. Ask you question in the polite way to get a faster and constructive answer.



Good deeds to you and light consequences.

Wednesday, June 20, 2012

SharePoint: Is there life after development? Transition plan for SharePoint support team

Finally, my 2 year project on SharePoint 2007\2010 has been finished!
We started with 9 brave people in the team.
Our tasks were:
1. Build SOA infrastructure;
2. Bring data from disparate data sources into one application for measurement and management;
3. Build SharePoint farm;
4. Organize development and deployment process;
5. Develop custom business solutions based on SharePoint technology;
6. Build a report system to make use of the data in SharePoint;
It took us roughly 8 months of initial and hectic work.

And in another 1 year we have been asked (with 7 people):
 7. Extend functionality;
 8. Maintenance;
6.  Develop mobile solution to work with custom SharePoint sites;
7.  Upgrade 2007 to 2010.

Finished all. Now, it's time to transition support to the support team.
So, here is my a suggested transition plan for SharePoint support team.


The plan should be outlined by a person who holds knowledge. But the content should be filled by support team.  Also support team needs to get an estimate for every phase, the estimate should be recommended by a knowledgeable person.
They need to collaborate with developers to get the document done. 
Once the document is ready, a team lead\ or some other guy who knows the picture, needs to verify the document and to correct if necessarily.

Here are steps for transition plan:

1. Knowledge holders 
A main holder can be a team lead in the project. He should provide contact information to support team.
The contact info should contain all major areas that is needed to fully support the SharePoint farm and a responsible\ knowledgeable person in this area.

Here is an example of areas:
SharePoint Developer
SharePoint Architect
External system (BDC) administrators
DBA
Report developer
AD Administrator
ISA Administrator
SharePoint trainers

2. Environment  awareness
Support team should become aware:
 - what environments were build (ex: Dev, QC, Training, Staging , Prod);
 - the purpose of the environment;
 - the environment topology (how many servers with what roles, load balancing (ex. ISA) configuration)

The access plan should be developed: when to ask access to where. 

It will be milestones for the support team get them up to speed.

3.  Code awareness
- what the custom solutions and where they are;
- solution dependencies;
- how to build and deploy;

4. Development and deployment approaches
- is it possible go with no-downtime deployment and how (SharePoint : Farm solution deployment with no downtime. Update-SPSolution -local)


Approaches to deploy:
Content-based and code-based deployment, hybrid ( refer to previous posts):
When it makes sense to use:
- Sandbox solution - SharePoint 2010: Sandboxed solution restrictions and considerations
Hybrid Sandbox solution ;
- Farm solution;
- Content deployment

Each of these has own appropriate context and their advantages and disadvantages.

Note: This step is  for education purposes. You never know what knowledge a new member in SharePoint support team has.


5. Troubleshooting : common areas
As an example for our farm it is:
- SSRS
- External system check ( BDCM)

6. Backup and restore strategy


Happy supporting


Wednesday, June 13, 2012

SharePoint: Administrators audit. How to pull all farm and site collections administrators

Finally, get a chance to write something ... in code! not in the paper sketching the meeting, not an email, not a post)

The current client wants to have information on administrators of the farm: Farm Administrators, Site collections administrators.

One of the option, to go and check manually it.

But, we want to have instant report at this moment, who is an admin of what in the SharePoint farm.

I have written a PowerShell script for SharePoint 2010 to pull Farm Administrators and Site Collections Administrators into XML report.

The report looks like this:



You are free to download it from TechNet Script Center Repository

Monday, March 12, 2012

SharePoint server cache: How to clear

For some reasons, you have decided to clear cache.

Here are several reasons why I need to clear SharePoint server cache:

1. Workflow timer job is acting weird. Workflows are stuck in "Starting" status without any errors in ULS log.

2. User Profile application produces synchronization errors such as  failure trying to synch site . Cannot insert duplicate key row in object

3. You have restored your VM with SharePoint Server and having errors like this:  System.NullReferenceException: Object reference not set to an instance of an object. at Microsoft.SharePoint.Administration.SPDatabase.get_SqlSession()


So, how do you clear the SharePoint cache?

1. Stop SharePoint Timer

2. Check the GUID for your config database:

Go to - HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server Extensions\14.0\Secure\ConfigDB
and Check ID

For SP2013 - it's 15.0 folder instead 14.0
And any case, this step is optional and you can try to locate cache folder without investigation ID.

3. Go to {You system drive}:\ProgramData\Application Data\Microsoft\SharePoint\Config 
Clear the files from folder with the ID of your config db.
Create cache.ini with the value '1' in the file



4. Start SharePoint Timer

5. Check the cache.ini. If caching started successfully you will see that:
 - cache.ini contains other value than '1'
 - new xml files were created.


P.S. I have noticed that SharePoint 2010 creates another folder with files PERSISTEDFIle extension.
I have deleted this folder  and haven't discovered any problem after that. Although, I found a post where it says that
be sure NOT to touch the one with the PERSITEDFILEs
(Clear the SharePoint Configuration (Timer) Cache)

Please, please, please, SharePoint community if you know why SharePoint uses this PERSITEDFILE, let me know.



Wednesday, February 29, 2012

Lesson learned: list corruption after stsadm -o import


The case:
The site is created from STP template with some data included. The additional data imported through stsadm –o import

The result:
       List corruption on the site.

The recommendation:

Don’t combine 2 approaches: STP with data and stsadm –o import.
Either go with:
-           STP with fresh data ;
-          Stsadm –o import on the blank site template.

Consideration:

 STSADM.EXE -O EXPORT:
It exports data using Object Model and generated new GUID for every object.
It doesn't copy workflow history and tasks lists. 

This means that you have some hard-coded logic in the site it will be broken after stsadm.exe export.

(for further analysis, you welcome to read my blog entry - Sharepoint: How to backup site: stsadm export and SPD backup)

P.S.
Some of the errors that you find in the import log that will wreck the havoc:


Importing File Version 1.0
Invalid file name. The file name you specified could not be used



Item does not exist. It may have been deleted by another user.
   at Microsoft.SharePoint.SPListItem.EnsureItemIsValid()

Friday, February 17, 2012

Simple concept: Does WSP deployment(retraction) resets IIS?


[Question]: 
Does WSP deployment triggers IISRESET?

[Answer]:
Depends on type of deployment. There are 2 kinds: Local and Timer Service deployments
(Deploying a Solution). BE AWARE that WSP solution retractions causes IISRESET too.

Local WSP deployment -  stsadm -o deploysolution -local .Deploys the solution synchronously on the local computer only. The timer service is not used.  . It will call IISRESET but locally on the WFE, not in all WFEs in the farm.

Farm solution deployment with no downtime. Update-SPSolution -local

Timer Service Deployment -  stsadm -o deploysolution -immeidate (or -time)
(Deploysolution: Stsadm operation) . Uses a timer job and triggers IISRESET.

The deployment step for a farm solution creates a timer job. This timer job is used by the timer service on each web server in the server farm. The timer job also uses the SharePoint Foundation Administrative web service to access appropriate privileges to deploy solution files to each computer, so both services must be running on all servers for the deployment to succeed.

Initially, the package manifest is parsed to find assemblies, application pages, JavaScript, and other files that are not part of a Feature. These are copied to the locations specified in the manifest. All files contained within a Feature are copied to the Feature directory, a subdirectory of %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\FEATURES. After solution files are copied to the target computers, a configuration reset is scheduled for all front-end web servers; the reset then deploys the files and restarts Internet Information Services (IIS). Farm administrators can specify when this occurs.

More detail coverage on the topic: SharePoint Solution Deploy, retract, upgrade – What causes your SharePoint farm to go offline IISRESET (web server outage).

Wednesday, February 15, 2012

When to use an timer job rather than a Workflow

A time ago a I have put short and useful note :When to use an Event Handler rather than a Workflow

Now, I want to create another "copy-paste" from one of the book that I m reading (Microsoft SharePoint 2010 Administrator's ) on the topic " Workflow and timer job when to use it":

Timer jobs can be used instead of so called "system" workflow ( that automate processes  that interact with the content and data stored in SharePoint). The major differences between timer job and system workflow:
 - Timer jobs can be activated and managed by farm administrators only;
 - End users can't control execution;

So rule of thumb: If the end users do not need to control the process, then choose timer jobs; otherwise, choose system workflow



  • Does any user interaction occur?
  • Will the process run for a long time (more than a second or two)?
  • Will the process need to pause to wait for another process to complete a task?
  • Will the process be run many times (more than 25 or 30) concurrently?
If the answer is "Yes" for any of these questions, you should build a workflow; if "No" for all, consider an event receiver. There are certainly some exceptions, but in general these rules apply. (Workflow Scalability and Performance in Windows SharePoint Services 3.0)

Wednesday, February 8, 2012

ISA: How to redirect HTTPS to HTTP, How to set SSL Certificate

One of the task while building SharePoint farm ( in my case 2010) is to set Load Balancing. The common approach for this is to make use of ISA.

My prod SharePoint portal needs to use SSL connection. Plus, I love simplicity. So, I have decided to use ISA
to set SSL connection for users.

Traffic between users and ISA are HTTPS, but traffic between ISA and SharePoint portal is HTTP. 
The beautiful name for such connection is off-box SSL termination.

 To implement it, we need to have:
1. SSL certificate issued for the portal host name;
2. ISA

That's it)

How to do it:

1. Setup a  SSL certificate that been issued for your portal host name on ISA
Simple concept: How to add SSL certificate

2. Create a Server Farm object in ISA , create Firewall Policy with this object.

Set Internal site name that been send to WFE, In the farm object add WFE server IPs

Server Farm is TO where the requested will be redirected

3.Create a Listener
Listener is FROM where the requested will be redirected
The specified IPs are IPs of ISA that been used specifically for redirection users. DNS server administrator should create a DNS entry with public DNS host (ex. portal2010.local) that is been pointed to the IP on ISA.

In the connection tab check HTTP and HTTPS. This way you allow a user to type HTTP, but eventually his request will be converted into HTTPS (that is achieved through other option which will be shown in a few sec)

4. Add certificate to the listener
Simple concept: How to add SSL certificate

5. Add to the rule on the tab "Public name" , the public name of the portal

6. And this is the crucial, juicy and last step.
Bridging - How the request will be redirected

Notice that "Redirect" goes to HTTP, not to SSL.
This way you don't have to install SSL certificate on WFE itself, just on ISA. But the user still get HTTPS connection between him and ISA.

P.S.
Test Rule shows you HTTP connection, because it shows the communication between ISA and WFE.
The user will see a different picture. he will see HTTPS since he's been served by ISA.

P.S.S.
Remember to configure AAM appropriatelly. Also, my advice is to configure WFE the way you can test the sites without load- balancing on the box itself:

SharePoint Load balancing:local settings for a web server


Tuesday, January 31, 2012

Simple Concept: Central Administration Url: Where it stores and how to change


[Question]:
On  SharePoint server when I click on "Central Administration" it goes nowhere...
How do I change the Url for 'Central Administration" shortcut?

[Answer]:
When "central administration" goes nowhere, first check if shortcut goes to the right url.
Url for this shortcut is kept in registry:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server Extensions\14.0\WSS\CentralAdministrationURL

Please backup the key first, and then safely set you desired url for CA.
It actually changes automatically when you setup default public url in Alternate Access Mapping.


P.S. For some reason a new url won't work locally on the server?
Please read about some tweaks that you wan't to do on the web server:
Disable the loopback or specify HostName


Wednesday, January 25, 2012

Simple Concept: _layouts/userdisp.aspx shows 404 not found

[Question]: 
How to fix 404 not found on SharePoint 2007/2010 browsing User Profile page _layouts/userdisp.aspx ?

[Answer]:

The userdisp.aspx page code needs to be changed on any servers providing web application services for the site (the web front ends, for example). On the servers, navigate to C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\TEMPLATE\LAYOUTS. Make a copy of the userdisp.aspx file – just in case, so you'll have something to revert back to! Open the original using Notepad. Look for Scope="Farm" and change Farm to Web so that it reads Scope="Web". Save and close. Repeat on all web servers


P.S. More details from SharePoint User Information Userdisp.aspx Error by Melonie Poole

Application Server Administration job failed for service instance:Access to the path 'C:\Windows\system32\drivers\etc\HOSTS' is denied.



Application Server Administration job failed for service instance Microsoft.Office.Server.Search.Administration.SearchServiceInstance (db7e7060-eba7-4b6c-b09e-242978fa6e97).
Reason: Access to the path 'C:\Windows\system32\drivers\etc\HOSTS' is denied.

Having this error?

Read on and you will know why Search writes in the host file and how to give access to the host file.

First of all, Search service writes in the host file when you use a dedicated server for crawling 
For more details - sharepoint 2007 search writes wrong IP in host file

Wondering if you need to use a dedicated server? Read this simple and useful article - Configure a dedicated front-end Web server for crawling (Office SharePoint Server 2007)

In case you need to keep a dedicated server for crawling, to fix the issue with access to host file, do following:
 Set permissions for group WSS_Admin_WPG on host file
Make sure that you Set "Modify" BUT NOT "Full control" (otherwise Search deletes HOST file)

sharepoint 2007 search writes wrong IP in host file

Wondering why host file has wrong IPs for SSP or your portal?
And you can clearly see that these records made by Search service.
 #Added by Office SharePoint Server Search


I found a wonderful post about it : Configure a dedicated front-end Web server for crawling (Office SharePoint Server 2007)


"When you use the Configure Office SharePoint Server Search Service Settings page in Central Administration to select a dedicated front-end Web server for crawling the SharePoint timer service writes the entries to the Hosts file"


The host file may have wrong IPs written by search service in the following cases:
  • The server that you specified as your dedicated front-end Web server for crawling has multiple IP addresses assigned to one or more network cards.
  • Your server farm is using network load balancing.
To quickly fix it:
 1.  Go to Central Administration /_admin/Server.aspx, click on "Office SharePoint Server Search".
Select "Use all web fronts end computers for crawling"
 2. Change IPs in the host file.


After this fix, search service will not overwrite host file.

Tuesday, November 15, 2011

Simple concept:SharePoint document is locked for editing by "another user"

[Question]:
I am trying to edit the document from SharePoint library , getting an error:
The document is locked for editing by "another user".
How I can resolve this issue?

[Answer]:
Annoying...
Need some knowledge on that - The document is locked for editing by another user" error message when you try to open a document in Word
Need an immediate help? -
1. Kill the process WINDWORD.exe
2. Check out the file to the draft folder from SharePoint library
 Edit the document and safe it with checking in.
Next time you will not have problem with editing the document

Friday, October 14, 2011

Simple concept: Set permissions for all users to BDC

[Question]: How to set permissions for all users on BDC file?
[Answer]: NT AUTHORITY\Authenticated Users
In case you want to automate the process here are 3  options: BDCM: How to set permissions through the code?

Simple concept: Managed Paths: Wildcard or Explicit?

[Question]: What it is Managed Paths? What the difference between Wildcard and Explicit?
[Answer]:
   Managed paths allow SharePoint to determine what portion of a given URL corresponds to the site collection URL
  Explicit managed paths allow a single site collection at the path Url
 Wildcard  - allow unlimited site collections to be created under the path Url.