Skip to content

@hotgazpacho /gist:1301411

Embed URL


Subversion checkout URL

You can clone with
Download ZIP
Error when trying to restore a database from a backup using RoundhousE
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)
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.)

Command line:
.\Lib\RoundhousE\console\rh.exe --databasename=IddealSuite --restore=true --restorefrompath=Database\IddealSuite.bak --sqlfilesdirectory=Database --schemaname=Iddeal --outputpath=DeployResults --withtransaction --debug --versionfile=Build_BuildInfo.xml


This looks like a problem in losing the connection.

--restoretimeout 1500 ?

Transport level errors occur when the connection is disposed and the item tries to use that connection. You see it alot in SSMS. This is a pretty nasty SQL Server bug where they say, just create a new connection.


You can also pass a connection string instead to help identify if this is the issue:

--cs "Data Source=(local);Initial Catalog=IddealSuite;Integrated Security=SSPI;Pooling=false"


This is in the latest code right? Good to know that falling back to fixed the issue.


Try moving the go to it's own line and make sure it is not on the very first line in the file.

Also, take a look here for something that we added to the latest:


Also, take a look at some of the areas around restore that we are adding for the latest version:


This is the list of closed issues on Google code that have been closed:


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...


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:


This should be fixed now for goodness sake... - chucknorris/roundhouse#26

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.