0

Sitecore 8.2 Update 3. Running two CDs behind ELB in AWS. Same region. This week, one of these CDs has twice lost it's ability to connect to the SQL server (according to the logs). Running SQL on RDS and the second CD has not had any issue. The issue resolves itself after roughly 30 minutes with no human intervention.

I'm not sure how to troubleshoot.

Here's an excerpt from the log:

ManagedPoolThread #3 08:32:28 ERROR Exception processing remote events from database: core
Exception: System.Data.SqlClient.SqlException
Message: A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)
Source: .Net SqlClient Data Provider
at System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions, SessionData reconnectSessionData, DbConnectionPool pool, String accessToken, Boolean applyTransientFaultHandling)
at System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions)
at System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnectionPool pool, DbConnection owningObject, DbConnectionOptions options, DbConnectionPoolKey poolKey, DbConnectionOptions userOptions)
at System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
at System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource'1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource'1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource'1 retry, DbConnectionOptions userOptions)
at System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource'1 retry)
at System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource'1 retry)
at System.Data.SqlClient.SqlConnection.Open()
at Sitecore.Data.DataProviders.Sql.DataProviderCommand..ctor(IDbCommand command, DataProviderTransaction transaction, Boolean openConnection)
at Sitecore.Data.DataProviders.Sql.SqlDataApi.<>c__DisplayClass26_0.b__0()
at Sitecore.Data.DataProviders.NullRetryer.Execute[T](Func'1 action, Action recover)
at Sitecore.Data.DataProviders.Sql.SqlDataApi.<>c__DisplayClass29_0.b__0()
at Sitecore.Data.DataProviders.NullRetryer.Execute[T](Func'1 action, Action recover)
at Sitecore.Data.DataProviders.Sql.SqlDataApi.CreateReader(String sql, Object[] parameters)
at Sitecore.Data.DataProviders.Sql.SqlDataProvider.Exists(String sql, Object[] parameters)
at Sitecore.Data.DataProviders.Sql.SqlDataProvider.SetPropertyCore(String propertyName, String value, CallContext context)
at Sitecore.Data.DataProviders.Sql.SqlDataProvider.SetProperty(String parameterName, String value, CallContext context)
at Sitecore.Data.DataProviders.DataProvider.SetProperty(String name, String value, CallContext context, DataProviderCollection providers)
at Sitecore.Data.DataManager.SetProperty(String name, String value)
at Sitecore.Data.Eventing.SqlEventQueue.SetTimestampForLastProcessing(TimeStamp currentTimestamp)
at Sitecore.Eventing.EventQueue.ProcessEvents(Action'2 handler)
at Sitecore.Eventing.EventProvider.RaiseQueuedEvents()

Nested Exception

Exception: System.ComponentModel.Win32Exception
Message: The network path was not found

  • 1
    This is a network issue and has nothing to do with Sitecore. You will need to investigate your subnet and RDC performance logs. – Chris Auer Apr 28 at 14:26
  • @ChrisAuer What is "RDC"? – Michael Apr 28 at 15:50
  • Sorry, on my phone. RDS. Your aws sql. – Chris Auer Apr 29 at 1:36
0

Based on the error message it is trying to connect using the Named Pipes provider. This is an inter process protocol and will only work if SQL is on the same machine. You can force tcp by specifying this explicitly in the connection string e.g. server=tcp:hostname A similar issue can be found here

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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