locked
Asynchronous Service not running RRS feed

  • Question

  • Any known reason why the Async Svc doesn't start up on it's own.  It's set to automatic but periodically I get calls from remote users that they can't log on and it always turns out to be the Async Svc is not started.
    Thursday, December 3, 2009 11:00 PM

Answers

  • have you looked at the recovery options on the service and set them to restart the service.  It is best to wait a few minutes between retries to allow whatever is causing the problem to correct itself.  Maybe 5 or 10 minute wait between attempts will work.
    Best Regards, Donna
    • Proposed as answer by Donna EdwardsMVP Tuesday, January 12, 2010 12:51 AM
    • Marked as answer by Jim Glass Jr Thursday, February 4, 2010 6:53 PM
    Tuesday, January 12, 2010 12:51 AM

All replies

  • Is the server being rebooted from time to time or is something else 'stopping' the async svc? -  Check to make sure the user the async svc is running as has 'logon as a service' privs in AD - I've seen it get granted the right when it's started, only to lose the rights after a time.


    Scott Sewell, CustomerEffective | http:\\blog.CustomerEffective.com | Twitter:@ScottSewell
    • Marked as answer by Donna EdwardsMVP Friday, December 4, 2009 1:45 PM
    • Unmarked as answer by mardukes Friday, December 4, 2009 4:52 PM
    • Proposed as answer by Donna EdwardsMVP Tuesday, January 12, 2010 12:51 AM
    Friday, December 4, 2009 1:27 AM
    Moderator
  • I think it's getting Windows updates and restarting.
    Friday, December 4, 2009 3:57 PM
  • It's using the Network Service account.  I also wonder if it's "failing" because the program setup to run during recovery doesn't -- no failure email is being issued.
    Friday, December 4, 2009 4:40 PM
  • New information.  With great apologies, I've posted the error event log entry below.  At least in this case it seems to have gone offline because the SQL Server server failed.  My question is, what is wrong that once the SQL connection returns the service doesn't restart?  Or what can be done to have it restart without operator intervention?

    Log Name:      Application
    Source:        MSCRMAsyncService
    Date:          1/11/2010 7:57:27 AM
    Event ID:      17415
    Task Category: None
    Level:         Error
    Keywords:      Classic
    User:          N/A
    Computer:      ****CrmPrdNode01.****.com
    Description:
    Host ****CRMPRDNODE01: error while processing organization 5c5e812d-43a5-49fc-a5c1-f21c195c0e67.
     Exception: System.Data.SqlClient.SqlException: A transport-level error has occurred when receiving results from the server.
     (provider: TCP Provider, error: 0 - The semaphore timeout period has expired.)
       at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
       at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
       at System.Data.SqlClient.TdsParserStateObject.ReadSniError(TdsParserStateObject stateObj, UInt32 error)
       at System.Data.SqlClient.TdsParserStateObject.ReadSni(DbAsyncResult asyncResult, TdsParserStateObject stateObj)
       at System.Data.SqlClient.TdsParserStateObject.ReadNetworkPacket()
       at System.Data.SqlClient.TdsParserStateObject.ReadBuffer()
       at System.Data.SqlClient.TdsParserStateObject.ReadByte()
       at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream,
     BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
       at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async)
       at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
       at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
       at Microsoft.Crm.CrmDbConnection.InternalExecuteNonQuery(IDbCommand command)
       at Microsoft.Crm.CrmDbConnection.ExecuteNonQuery(IDbCommand command, Boolean impersonate)
       at Microsoft.Crm.CrmDbConnection.SetTransactionIsolationLevel(IsolationLevel il)
       at Microsoft.Crm.CrmDbConnection.Open()
       at Microsoft.Crm.Asynchronous.DataAccessSharedBase.ExecuteSqlCommand(IDbCommand command, Nullable`1 expectedAffectedRecords)
       at Microsoft.Crm.Asynchronous.QueueDataAccess.MoveSuspendedToReady()
       at Microsoft.Crm.Asynchronous.QueueManager.<OnMoveSuspendedToReadyTimerEvent>b__1(IQueueDataAccess queueDataAccess)
       at Microsoft.Crm.Asynchronous.QueueManager.ExecuteForAllOrganizations(OrganizationQueueDataAccessHandler handler)
    Event Xml:
    <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
      <System>
        <Provider Name="MSCRMAsyncService" />
        <EventID Qualifiers="49152">17415</EventID>
        <Level>2</Level>
        <Task>0</Task>
        <Keywords>0x80000000000000</Keywords>
        <TimeCreated SystemTime="2010-01-11T13:57:27.000Z" />
        <EventRecordID>56733</EventRecordID>
        <Channel>Application</Channel>
        <Computer>****CrmPrdNode01.****.com</Computer>
        <Security />
      </System>
      <EventData>
        <Data>****CRMPRDNODE01</Data>
        <Data>5c5e812d-43a5-49fc-a5c1-f21c195c0e67</Data>
        <Data>System.Data.SqlClient.SqlException: A transport-level error has occurred when receiving results from the server.
     (provider: TCP Provider, error: 0 - The semaphore timeout period has expired.)
       at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
       at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
       at System.Data.SqlClient.TdsParserStateObject.ReadSniError(TdsParserStateObject stateObj, UInt32 error)
       at System.Data.SqlClient.TdsParserStateObject.ReadSni(DbAsyncResult asyncResult, TdsParserStateObject stateObj)
       at System.Data.SqlClient.TdsParserStateObject.ReadNetworkPacket()
       at System.Data.SqlClient.TdsParserStateObject.ReadBuffer()
       at System.Data.SqlClient.TdsParserStateObject.ReadByte()
       at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream,
     BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
       at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async)
       at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
       at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
       at Microsoft.Crm.CrmDbConnection.InternalExecuteNonQuery(IDbCommand command)
       at Microsoft.Crm.CrmDbConnection.ExecuteNonQuery(IDbCommand command, Boolean impersonate)
       at Microsoft.Crm.CrmDbConnection.SetTransactionIsolationLevel(IsolationLevel il)
       at Microsoft.Crm.CrmDbConnection.Open()
       at Microsoft.Crm.Asynchronous.DataAccessSharedBase.ExecuteSqlCommand(IDbCommand command, Nullable`1 expectedAffectedRecords)
       at Microsoft.Crm.Asynchronous.QueueDataAccess.MoveSuspendedToReady()
       at Microsoft.Crm.Asynchronous.QueueManager.&lt;OnMoveSuspendedToReadyTimerEvent&gt;b__1(IQueueDataAccess queueDataAccess)
       at Microsoft.Crm.Asynchronous.QueueManager.ExecuteForAllOrganizations(OrganizationQueueDataAccessHandler handler)</Data>
      </EventData>
    </Event>
    Monday, January 11, 2010 5:14 PM
  • have you looked at the recovery options on the service and set them to restart the service.  It is best to wait a few minutes between retries to allow whatever is causing the problem to correct itself.  Maybe 5 or 10 minute wait between attempts will work.
    Best Regards, Donna
    • Proposed as answer by Donna EdwardsMVP Tuesday, January 12, 2010 12:51 AM
    • Marked as answer by Jim Glass Jr Thursday, February 4, 2010 6:53 PM
    Tuesday, January 12, 2010 12:51 AM