Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

When I provision the User Profile Service it will not start. I started with a clean install of SharePoint 2013 (Build Version: 15.0.4420.1017) on Windows Server 2012. Initially I used PowerShell to configure the UPS service application with an account other than the SP_Farm. Once I realized there was an issue, I deleted the existing service app.

I then reprovisioned it using the central admin UI and the farm account. The farm account was a member of the local administrators group. I rebooted the server and attempted to start the UPS. Experienced the same issue.

I rechecked that the Farm account had the required permissions in AD. I stopped all SharePoint services and then then deleted the FIM certificates. I then rebooted the server and tried to start the service in Central Admin again. Same exact issues.

I then uninstalled SharePoint entirely and deleted all databases from the SQL Server. I set the Farm account as an SA on the server just in case. I reinstalled SharePoint, rebooted the server and ran the configuration scripts as per usual. Then I created the user profile service app using the Central Admin UI. I rebooted the server. I attempted to start the service from central admin. Same errors.

I deleted the UPS yet again. I added the farm account to Domain Admins. I restarted the server again. At his point the Farm account is an SA on the SQL Server and a Domain Admin. I reprovisioned the UPS. I attempted to start it. Same errors.

My next step will be to format the hard drive, reinstall the server OS, delete the databases, reinstall SharePoint and try everything over again.

Does anyone have a suggestion for what mistake I am making?

UPDATE - Jan, 10, 2014

We have done multiple rebuilds, searched AD for duplicate SPNs, possible duplicate CNs in AD, every possible rabbit hole has boon ferreted. All that we know for sure is that it's an error being thrown deep down in a SQL stored procedure. I am going to attempt the build in a clean lab with a new AD just to be sure that we can at least do that. But there has to be some sort of issue in our AD that is causing this.

EDIT:

Just to be clear regarding the common questions I have been asked:

  1. The UPS was being run as the Farm Account. Initially this was not the case, though. The First time I reprovisioned the service it was the Farm account. So in every case except the initial failure, it was being run as the Farm account including the time I completely uninstalled SharePoint and reinstalled.

  2. As I stated above, the Farm was and continues to be local admin.

  3. It has log on locally rights. In fact, I logged on as the Farm account to the server to ensure this and to ensure that the default language was English.

  4. As I explained above, I followed the guidance in the link given (http://technet.microsoft.com/en-us/library/hh296982.aspx) to ensure the Farm account had the required permissions and was a member of the required groups. This was done before I used the Farm account to deploy the UPS and was verified on two separate instances.
  5. The Web Services App Pool is running.

END EDIT

Here are the errors. I have tried everything suggested in every link that Google has yielded to me. I even logged in as the Farm Account to ensure that its default language was English.

ILM Web Service Configuration

ILM Certificate could not be created: netsh http error:netsh http add urlacl url=http://+:5726/ user=CTCT\sp_farm sddl=D:(A;;GA;;;S-1-5-21-836088835-2467000696-1087451681-4209)

Forefront Identity Manager

.Net SqlClient Data Provider: System.Data.SqlClient.SqlException: Transaction count after EXECUTE indicates a mismatching number of BEGIN and COMMIT statements. Previous count = 1, current count = 0.
   at System.Data.SqlClient.SqlConnection.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.ResourceManagement.Data.DataAccess.ProcessRequest(RequestType request)

Forefront Identity Manager

.Net SqlClient Data Provider: System.Data.SqlClient.SqlException: Transaction count after EXECUTE indicates a mismatching number of BEGIN and COMMIT statements. Previous count = 1, current count = 2.
   at System.Data.SqlClient.SqlConnection.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.SqlDataReader.ConsumeMetaData()
   at System.Data.SqlClient.SqlDataReader.get_MetaData()
   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.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
   at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
   at System.Data.SqlClient.SqlCommand.ExecuteReader()
   at Microsoft.ResourceManagement.Data.DataAccess.UpdateRequest(RequestType request, IEnumerable`1 updates)

Forefront Identity Manager

.Net SqlClient Data Provider: System.Data.SqlClient.SqlException: Transaction count after EXECUTE indicates a mismatching number of BEGIN and COMMIT statements. Previous count = 1, current count = 2.
   at Microsoft.ResourceManagement.Utilities.ExceptionManager.ThrowException(Exception exception)
   at Microsoft.ResourceManagement.Data.Exception.DataAccessExceptionManager.ThrowException(SqlException innerException)
   at Microsoft.ResourceManagement.Data.DataAccess.UpdateRequest(RequestType request, IEnumerable`1 updates)
   at Microsoft.ResourceManagement.WebServices.RequestDispatcher.UpdateRequestAndPersist(RequestType request)
   at Microsoft.ResourceManagement.WebServices.RequestDispatcher.DispatchRequest[ResponseBodyType](RequestType request, Guid requestIdentifier, Object redispatchSingleInstanceKey)
   at Microsoft.ResourceManagement.WebServices.RequestDispatcher.DispatchRequest[ResponseBodyType](RequestType request)
   at Microsoft.ResourceManagement.WebServices.ResourceManagementService.Create(Message request)
share|improve this question
    
what does your environment look like? farms/servers/SQL version/etc.? Also, what build of SharePoint 2013 are you installing? –  Mike Nov 4 '13 at 0:47
    
2 Server topology, SQL Server 2012 on Win server 2012 and the WFE is Server 2012 as well. I ensured the WFE had all the required updates including the so-called "Forgotten Prerequisites" toddklindt.com/blog/Lists/Posts/Post.aspx?ID=406 –  Robert Kaucher Nov 4 '13 at 0:57
3  
completely understood. Does the User Profile service have the necessary permission on the server (administrators) before provisioning? 1.You must run the UPA Service Instance as the Farm Account. 2.Farm Account must be a local administrator of the machine running the UPA Service Instance during provisioning only. 3.Farm Account must have Log on Locally rights. 4.The Synchronization Connection Account must have Replicating Directory Changes.. 5.Sharepoint webservices application pool started in IIS. –  Mike Nov 4 '13 at 3:25
2  
I had a similar problem on my development environment (WS2012), and the customer production environment (WS2008R2). I solved it using Harbar's Rational Guide to implementing SharePoint Server 2010 User Profile Application. It works on both SharePoint Server 2013 Standard and Enterprise. Try the guide, and don't leave out any step! –  Benny Skogberg Nov 4 '13 at 5:29
2  
I apologize I jumped the gun. Here are two articles about the UPS that should still be relevant to 2013. harbar.net/articles/sp2010ups.aspx harbar.net/articles/sp2010ups2.aspx –  Mike Nov 10 '13 at 16:28
show 9 more comments

1 Answer

up vote 3 down vote accepted

This can occur if there is clock skew between SQL Server and the Web Front End.

In our case the time on the WFE was being set by a DC with the correct time, the time on the database server was being set by another domain controller with a -3 minute difference.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.