Created
October 20, 2011 15:20
-
-
Save hotgazpacho/1301411 to your computer and use it in GitHub Desktop.
Error when trying to restore a database from a backup using RoundhousE
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Running RoundhousE v0.8.230.353 against (local) - IddealSuite. | |
Looking in C:\Dev\Iddeal\Database for scripts to run. | |
================================================== | |
Setup, Backup, Create/Restore/Drop | |
================================================== | |
Creating IddealSuite database on (local) server if it doesn't exist. | |
Restoring IddealSuite database on (local) server from path C:\Dev\Iddeal\Database\IddealSuite.bak. | |
RoundhousE encountered an error. You were running in a transaction though, so the database should be in the state it was in prior to this piece running. This does not include a drop/create or any creation of a database, as those items can not run in a transaction. | |
System.Data.SqlClient.SqlException: A transport-level error has occurred when sending the request to the server. (provider: Shared Memory Provider, error: 0 - No process is on the other end of the pipe.) | |
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.TdsParserStateObject.WriteSni() | |
at System.Data.SqlClient.TdsParserStateObject.WritePacket(Byte flushMode) | |
at System.Data.SqlClient.TdsParser.TdsExecuteTransactionManagerRequest(Byte[] buffer, TransactionManagerRequestType request, String transactionName, TransactionManagerIsolationLevel isoLevel, Int32 timeout, SqlInternalTransaction transaction, TdsParserStateObject stateObj, Boolean isDelegateControlRequest) | |
at System.Data.SqlClient.SqlInternalConnectionTds.ExecuteTransactionYukon(TransactionRequest transactionRequest, String transactionName, IsolationLevel iso, SqlInternalTransaction internalTransaction, Boolean isDelegateControlRequest) | |
at System.Data.SqlClient.SqlInternalConnectionTds.ExecuteTransaction(TransactionRequest transactionRequest, String name, IsolationLevel iso, SqlInternalTransaction internalTransaction, Boolean isDelegateControlRequest) | |
at System.Data.SqlClient.SqlInternalConnection.BeginSqlTransaction(IsolationLevel iso, String transactionName) | |
at System.Data.SqlClient.SqlInternalConnection.BeginTransaction(IsolationLevel iso) | |
at System.Data.SqlClient.SqlConnection.BeginDbTransaction(IsolationLevel isolationLevel) | |
at System.Data.Common.DbConnection.System.Data.IDbConnection.BeginTransaction() | |
at roundhouse.databases.AdoNetDatabase.open_connection(Boolean with_transaction) | |
at roundhouse.migrators.DefaultDatabaseMigrator.open_connection(Boolean with_transaction) | |
at roundhouse.runners.RoundhouseMigrationRunner.run() | |
A transport-level error has occurred when sending the request to the server. (provider: Shared Memory Provider, error: 0 | |
- No process is on the other end of the pipe.) |
Freaking retarded, but there is a bug in SQL Server where it tries to reuse connections and fails miserably due to the connections in the pool being deconstructed when it is trying to get them.
This is how you get around: http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection.clearpool.aspx
http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection.clearallpools.aspx
and for posterity: http://msdn.microsoft.com/en-us/library/8xx3tyca(v=VS.100).aspx
This should be fixed now for goodness sake... - chucknorris/roundhouse#26
running version 0.8.6 i still had some issues using the /withtransaction switch while trying to restore, don't know if this version should contain this fix?
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
It's the transaction! In more recent versions there are two connections being set up, one admin on the master db and one normal on the regular db. It's trying to reuse a connection that is disposing...