I made a script for batch uploading files, which I successfully used to upload more than 900 files (few gigs of data). Today I prepared another set of files and everything was working fine, but suddenly script started to throw exceptions. I tried to refresh my list view, but I got 302 error after some time... From another computer there was the same issue. I then made an iisreset
and got Runtime Error, that farm is not accessible. When trying to run central administration, It says that it cannot connect to configuration database.
Our database consist of two servers in failover cluster, and everything there looks good, although I can't say that servers didn't switch while uploading. We are also using RBS.
EDIT:
Following IAfanasov comment, I connected via remote desktop to DB server, and looks like everything looks good there - instance is running and server is accessible from another places in the network. I also checked logs, and found this:
System.Data.SqlClient.SqlException: A transport-level error has occurred when sending the request to the server. (provider: TCP Provider, error: 0 - An existing connection was forcibly closed by the remote host.)
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) at System.Data.SqlClient.TdsParserStateObject.WriteSni() at System.Data.SqlClient.TdsParserStateObject.ExecuteFlush() at System.Data.SqlClient.TdsParser.TdsExecuteRPC(_SqlRPC[] rpcArray, Int32 timeout, Boolean inSchema, SqlNotificationRequest notificationRequest, TdsParserStateObject stateObj, Boolean isCommandProc) 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(CommandBehavior behavior) at Microsoft.Office.Server.Data.SqlSession.ExecuteReader(SqlCommand command, CommandBehavior behavior, SqlQueryData monitoringData, Boolean retryForDeadLock)
and following:
Unknown SQL Exception 121 occurred. Additional error information from SQL Server is included below. A transport-level error has occurred when receiving results from the server. (provider: TCP Provider, error: 0 - The semaphore timeout period has expired.)
ConnectionString: 'Data Source=spdb;Initial Catalog=SharePoint_Config;Integrated Security=True;Enlist=False;Asynchronous Processing=False;Connect Timeout=15' ConnectionState: Closed ConnectionTimeout: 15
The Execute method of job definition Microsoft.SharePoint.Administration.SPConfigurationRefreshJobDefinition (ID 6d7865a0-84c4-4427-b8f3-ce229c08b7e3) threw an exception. More information is included below. A transport-level error has occurred when receiving results from the server. (provider: TCP Provider, error: 0 - The semaphore timeout period has expired.)
So it looks like SPDB (db cluster) went down (maybe because of network failure or nodes switching). But now SPDB is accessible and Sharepoint can't connect to config database...
Current logs say:
Cannot connect to SQL Server. spdb not found. Additional error information from SQL Server is included below. Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.
But ping to SPDB works, and I didn't find anything suspicious on MSSQL server...
Edit 2:
It looks like our failover cluster failed due to errors on filestream share which is shared between cluster nodes. We tried to reboot the active node in cluster and we were counting that second node would become active. Unfortunately FILESTREAM share refused to become online and SQL instance failed to go online too. Have you ever faced similar issue and could provide some guidance?