Wednesday, May 16, 2012

Event ID : 6641, SSP Timer Job User Profile Change Job was not run

The following error appears in the event viewer of my share point server every minute 

/******************Error Description *****************/

Event Type: Error
Event Source: Office SharePoint Server
Event Category: Office Server Shared Services
Event ID: 6641
Date: 5/15/2012
Time: 2:00:
00 PM
User: N/A
Computer: <server name>

Description:
The SSP Timer Job User Profile Change Job was not run.

Reason: Logon failure: the user has not been granted the requested logon type at this computer

Technical Support Details:
System.ComponentModel.Win32Exception: Logon failure: the user has not been granted the requested logon type at this computer
at Microsoft.Office.Server.Utilities.WindowsSecurity.GetUserTokenFromCredentials(String userDomainName, String password, LogonType logonType)
at Microsoft.Office.Server.Utilities.WindowsSecurity.GetUserTokenFromCredentials(String userDomainName, String password)
at Microsoft.Office.Server.Administration.JobHandler.Execute(Object state, Boolean timedOut)

For more information, see Help and Support Center at
http://go.microsoft.com/fwlink/events.asp.

/******************Error Description *****************/

 I googled it for the resolution and in many places I found that it has to do with the service account password change and not updated in the farm credentials. But the service account password was not locked nor it was changed. There fore the solutions I found didn't solve my issue.

After thorough search, I again found in some places where it was mentioned that, the account on which the windows share point timer services will run, has to be provided with log on as batch privileges.
Following is the process to modify the setting

Type gpedit.msc from run and under
Local Computer Policy -> Computer Configuration -> Windows Settings -> Security Settings -> Local Policies -> User Rights Assignment.


check for the policy "Logon as a batch Job"

check whether the service account on which the windows share point Timer services are running is present in the policy as a user. If not, add the account there.

Also make sure that, the account should also be a part of "Logon as service" policy.

Once this is added, the error stopped appearing in my event viewer.

Thursday, May 3, 2012

Exception from HRESULT: 0x80040E14

You may come across this error Exception from HRESULT: 0x80040E14 when ever you try to add content to the sharepoint site or execute any stsadm commands.

The sqldb server must have run out of space. clear space from the dbserver and you see the error is no longer displayed.

Tuesday, May 1, 2012

Event ID: 5553 and 7888


In Application logs in the SharePoint server, we may continuously find 2 different events occurring frequently.

//-----------------------------------------------------------------
Event Type: Error
Event Source: Office SharePoint Server
Event Category: User Profiles
Event ID: 5553
Date: 4/26/2012
Time: 7:09:02 PM
User: N/A
Computer: SERVER NAME
Description:
failure trying to synch site a7b12d90-7d1d-4341-8df3-a1d92eba7a47 for ContentDB db7fb0d6-7d0d-4230-8de5-e7cc00ca0db7 WebApp 55de867d-5a9d-4ac4-83d6-f3ee9ee98df2. Exception message was Cannot insert duplicate key row in object 'dbo.UserMemberships' with unique index 'CX_UserMemberships_RecordId_MemberGroupId_SID'.
The statement has been terminated..
For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

//----------------------------------------------------------------
Event Type: Error
Event Source: Office SharePoint Server
Event Category: Office Server General
Event ID: 7888
Date: 4/26/2012
Time: 7:09:02 PM
User: N/A
Computer: SERVER NAME
Description:
A runtime exception was detected. Details follow.
Message: Cannot insert duplicate key row in object 'dbo.UserMemberships' with unique index 'CX_UserMemberships_RecordId_MemberGroupId_SID'.
The statement has been terminated.
Techinal Details:
System.Data.SqlClient.SqlException: Cannot insert duplicate key row in object 'dbo.UserMemberships' with unique index 'CX_UserMemberships_RecordId_MemberGroupId_SID'.
The statement has been terminated.
at System.Data.SqlClient.SqlConnection.OnError (SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.SqlInternalConnection.OnError (SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning (TdsParserStateObject stateObj)
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlCommand.FinishExecuteReader (SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds (CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)
at System.Data.SqlClient.SqlCommand.RunExecuteReader (CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)
at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery (DbAsyncResult result, String methodName, Boolean sendToPipe)
at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
at Microsoft.Office.Server.Data.SqlSession.ExecuteNonQuery (SqlCommand command)
at Microsoft.Office.Server.UserProfiles.WSSSynchSqlSession.SynchExecuteNonQuery (SqlCommand cmd, Boolean throwOnFail)
at Microsoft.Office.Server.UserProfiles.WSSSynchSqlSession.SynchExecuteNonQuery (SqlCommand cmd)
at Microsoft.Office.Server.UserProfiles.SiteSynchronizer.WriteChangeLogConsumed()
at Microsoft.Office.Server.UserProfiles.SiteSynchronizer.Synch()
at Microsoft.Office.Server.Diagnostics.FirstChanceHandler.ExceptionFilter (Boolean fRethrowException, TryBlock tryBlock, FilterBlock filter, CatchBlock catchBlock, FinallyBlock finallyBlock)
For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
//-----------------------------------------


Cause:
The likely reason for this issue is the content database which can be movied or copied or used without detaching properly.
As the synchronization runs every hour, this issue will appear frequently in the event viewer.

Resolution:
We have to track down which content db is giving the issue.
For that you can run the following queries in the config db to find out the contentdb 


SELECT *FROM [dbo].[Objects]

WHERE ID='db7fb0d6-7d0d-4230-8de5-e7cc00ca0db7'

The GUID of the content db can be obtained from the error message itself, (5553 error)

SELECT [FullUrl]
,[Id]
,[RootWebId]
FROM [WSS_Content_sitecontentdb].[dbo].[Sites]
WHERE ID='a7b12d90-7d1d-4341-8df3-a1d92eba7a47'


The site GUId also can be obtained from the error message. Which is used to execute the below command
The following command is to be executed to clear the errors.
stsadm -o preparetomove -Site "http://<sitename>/" -OldContentDB "<ContentDBGUID>"
stsadm -o sync -DeleteOldDatabases 0
Also remember that, before moving content database execute the preparetomove command.