Skip to content

Embed URL

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
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)
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.)
@hotgazpacho
Owner

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

@ferventcoder

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.

@hotgazpacho
Owner
@ferventcoder

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"

@ferventcoder

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

@hotgazpacho
Owner
@ferventcoder

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:
http://code.google.com/p/roundhouse/issues/detail?id=13&can=1&q=label%3AMilestone-Release0.8.5

@ferventcoder

Also, take a look at some of the areas around restore that we are adding for the latest version: https://github.com/chucknorris/roundhouse/issues?labels=v0.8.5&sort=created&direction=desc&state=closed&page=1

@ferventcoder

This is the list of closed issues on Google code that have been closed: http://code.google.com/p/roundhouse/issues/list?can=1&q=label%3AMilestone-Release0.8.5

@ferventcoder

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

@ferventcoder

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

@ferventcoder

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.