Valor de tiempo de espera caducado con SQL Server Express 2005

07/02/2009 - 12:45 por CharlyE | Informe spam
Saludos,

Trabajo con Visual Basic Express 2008 y SQL Server Express 2005 (SP3).

A veces cuando ejecuto mi proyecto (ya sea desde el IDE o como código
compilado) recibo un mensaje referente al "valor de tiempo de espera
caducado".

Consultando el Visor de sucesos de Windows veo que se ha producido el
siguiente error con origen en MSSQL$SQLEXPRESS:

System.Data.SqlClient.SqlException was unhandled
Class
ErrorCode=-2146232060
LineNumbere536
Message="Failed to generate a user instance of SQL Server due to a failure
in starting the process for the user instance. The connection will be closed."
Number372
Procedure=""
Server=".\SQLEXPRESS"
Source=".Net SqlClient Data Provider"
State=1

He estado investigando un poco y no sé si esto puede estar relacionado con
el ConnectionTimeout (aunque mi cadena de conexión no me admite este
parámetro). La verdad es que todo esto me tiene bastante confuso.
Cuando salgo de mi aplicación cierro las conexiones a todos los TableAdapter
que tengo. ¿Debo cerrar alguna conexión más?

¿Puede alguien orientarme sobre cómo resolver esta situación?

Muchas gracias

Preguntas similare

Leer las respuestas

#6 CharlyE
13/02/2009 - 10:30 | Informe spam
Buenos días

Sí, revisé el documento que me pasó Carlos. Es una descripción básica para
hacerse una idea general de las instancias de usuario (debo rconfesar que soy
totalmente novato en las lides de SQL). También busqué en Google posibles
referencias a mi problema (sin demasiada suerte, creo).Lo más cercano que
encontré es esta página

http://msdn.microsoft.com/es-es/library/ms190181(SQL.90).aspx

Pero todas las causas típicas descritas en ella parecen referirse a
instalaciones que usan redes, y mi instalación de SQL Express es local.

En lo referente a dar más detalles del problema, allá voy:

La situación actual es que cada vez (sin excepción) que arranco mi ordenador
y ejecuto mi programa aparece el temido mensaje de "valor de tiempo de espera
caducado". Si acepto el mensaje y vuelvo a ejecutar mi aplicación ya no hay
problema, y esto es así mientras no apague/reinicie mi equipo.

He intentado cambiar el commandTimeout y el connectionTimeout. La cadena de
conexión (connectionstring) que me aparece en mi proyecto de Visual Basic no
incluye el parámetro connectionTimeout, y no veo la manera de modificar la
connectionString (aunque creando una nueva, entrando en la configuración
avanzada sí veo el valor por defecto de 30 qu me comentabas en tu primer
mensaje).
Por lo que se refiere al commandTimeout (que entiendo es algo completamente
distinto al connectionTimeout), no sé cómo cambiarlo desde mi proyecto de
Visual Basic. Me descargué SSEUtil e intenté asignar un valor de 120 a
commandTimeout. SSEUtil me informó de que el nuevo valor se había asignado,
pero no sé si realmente tiene efectos sobre mi aplicación.

Cuando cierro mi aplicación cierro las conexiones con close, libero sus
recursos con dispose e incluso he añadido closepool, pero sigo igual (la
verdad es que no encuentro en ningún lado el procedimiento exacto para cerrar
una conexión y/o una instancia... sólo he leído en alguna parte que las
conexiones no se cierran solas). No sé si lo que ocurre se debe a que queda
abierta alguna conexión (o queda "mal cerrado" el SQL)

Además, la ventana de control de excepciones de visual basic me muestra este
mensaje:

System.Data.SqlClient.SqlException was unhandled
Class
ErrorCode=-2146232060
LineNumbere536
Message="Failed to generate a user instance of SQL Server due to a failure
in starting the process for the user instance. The connection will be closed."
Number372
Procedure=""
Server=".\SQLEXPRESS"
Source=".Net SqlClient Data Provider"
State=1
StackTrace:
en System.Data.SqlClient.SqlInternalConnection.OnError(SqlException
exception, Boolean breakConnection) en
System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject
stateObj) en System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior,
SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet
bulkCopyHandler, TdsParserStateObject stateObj) en
System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean
enlistOK) en
System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo
serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, Int64
timerExpire, SqlConnection owningObject) en
System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(String host,
String newPassword, Boolean redirectedUserInstance, SqlConnection
owningObject, SqlConnectionString connectionOptions, Int64 timerStart) en
System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection
owningObject, SqlConnectionString connectionOptions, String newPassword,
Boolean redirectedUserInstance) en
System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity
identity, SqlConnectionString connectionOptions, Object providerInfo, String
newPassword, SqlConnection owningObject, Boolean redirectedUserInstance)
en
System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions
options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection
owningConnection) en
System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection
owningConnection, DbConnectionPool pool, DbConnectionOptions options) en
System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection
owningObject) en
System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection
owningObject) en
System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection
owningObject) en
System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection
owningConnection) en
System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection
outerConnection, DbConnectionFactory connectionFactory) en
System.Data.SqlClient.SqlConnection.Open() en
System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection connection,
ConnectionState& originalState) en
System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[]
datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand
command, CommandBehavior behavior) en
System.Data.Common.DbDataAdapter.Fill(DataTable[] dataTables, Int32
startRecord, Int32 maxRecords, IDbCommand command, CommandBehavior behavior)
en System.Data.Common.DbDataAdapter.Fill(DataTable dataTable) en
MiAplicacion.MiAplicacionDataSetTableAdapters.ProgramTrucadesTableAdapter.GetDataByData(Nullable`1
ProgramData) en C:\Documents and Settings\Junior\Mis documentos\Visual Studio
2008\Projects\MiAplicacion\MiAplicacion\MiAplicacionDataSet.Designer.vb:línea
8198 en MiAplicacion.FrmGestTel.CarregarLlistaTrucades() en C:\Documents
and Settings\Junior\Mis documentos\Visual Studio
2008\Projects\MiAplicacion\MiAplicacion\FrmGestTel.vb:línea 286 en
MiAplicacion.FrmGestTel.FrmGestTel_Load(Object sender, EventArgs e) en
C:\Documents and Settings\Junior\Mis documentos\Visual Studio
2008\Projects\MiAplicacion\MiAplicacion\FrmGestTel.vb:línea 551 en
System.Windows.Forms.Form.OnLoad(EventArgs e) en
System.Windows.Forms.Form.OnCreateControl() en
System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible) en
System.Windows.Forms.Control.CreateControl() en
System.Windows.Forms.Control.WmShowWindow(Message& m) en
System.Windows.Forms.Control.WndProc(Message& m) en
System.Windows.Forms.ScrollableControl.WndProc(Message& m) en
System.Windows.Forms.ContainerControl.WndProc(Message& m) en
System.Windows.Forms.Form.WmShowWindow(Message& m) en
System.Windows.Forms.Form.WndProc(Message& m) en
System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) en
System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) en
System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg,
IntPtr wparam, IntPtr lparam) en
System.Windows.Forms.SafeNativeMethods.ShowWindow(HandleRef hWnd, Int32
nCmdShow) en System.Windows.Forms.Control.SetVisibleCore(Boolean value)
en System.Windows.Forms.Form.SetVisibleCore(Boolean value) en
System.Windows.Forms.Control.Show() en
MiAplicacion.FrmMDI.FrmMDI_Load(Object sender, EventArgs e) en C:\Documents
and Settings\Junior\Mis documentos\Visual Studio
2008\Projects\MiAplicacion\MiAplicacion\Form1.vb:línea 81 en
System.EventHandler.Invoke(Object sender, EventArgs e) en
System.Windows.Forms.Form.OnLoad(EventArgs e) en
System.Windows.Forms.Form.OnCreateControl() en
System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible) en
System.Windows.Forms.Control.CreateControl() en
System.Windows.Forms.Control.WmShowWindow(Message& m) en
System.Windows.Forms.Control.WndProc(Message& m) en
System.Windows.Forms.ScrollableControl.WndProc(Message& m) en
System.Windows.Forms.ContainerControl.WndProc(Message& m) en
System.Windows.Forms.Form.WmShowWindow(Message& m) en
System.Windows.Forms.Form.WndProc(Message& m) en
System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) en
System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) en
System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg,
IntPtr wparam, IntPtr lparam) en
System.Windows.Forms.UnsafeNativeMethods.SendMessage(HandleRef hWnd, Int32
msg, Int32 wParam, Int32 lParam) en
System.Windows.Forms.Form.SetVisibleCore(Boolean value) en
System.Windows.Forms.Control.set_Visible(Boolean value) en
System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32
reason, ApplicationContext context) en
System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason,
ApplicationContext context) en
System.Windows.Forms.Application.Run(ApplicationContext context) en
Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnRun()
en
Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel()
en
Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(String[]
commandLine) en MiAplicacion.My.MyApplication.Main(String[] Args) en
17d14f5c-a337-4978-8281-53493378c1071.vb:línea 81 en
System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args) en
System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence
assemblySecurity, String[] args) en
Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly() en
System.Threading.ThreadHelper.ThreadStart_Context(Object state) en
System.Threading.ExecutionContext.Run(ExecutionContext executionContext,
ContextCallback callback, Object state) en
System.Threading.ThreadHelper.ThreadStart()
InnerException:

Además, el error no se produce siempre en el mismo punto (aunque sí siempre
intentando operar con datos; unas veces falla en el código que ejecuta los
fill iniciales de los tableadapter, otras veces falla al intentar los
getdata).

Como te digo, soy novato en el tema. No sé si me habré explicado bien o si
he aportado suficiente información, pero espero que te sirva para hacerte una
idea de cómo están las cosas.

Sobre el enlace a la página de Joe Stagner que me has mandado, lo
investigaré. Veo que hay que borrar carpetas. Esto no afectará a mi
instalación de SQL, ¿verdad?

Muchas gracias por tu ayuda y por tu paciencia!

"Jose Mariano Alvarez" wrote:

Revisaste el documento que te paso Carlos?

Podrias darnos mas detalles del problema?

Puedes revisar esto tambien
http://blogs.msdn.com/joestagner/ar...tance.aspx


Saludos


Ing. Jose Mariano Alvarez
SQLTotal Consulting

(Cambia los ceros por O y saca lo que sobra)

Este mensaje se proporciona tal como es, SIN GARANTIAS de ninguna clase. Por
favor tratar de indicar la versión de SQL y Service Pack. La inclusión de
(CREATE, INSERTS, etc.) para poder reproducir el problema también ayuda.










"CharlyE" wrote in message
news:
> Buenas,
>
> He estado dando vueltas a la cuestión del commandtimeout.
>
> Desde Visual Basic 2008 Express no parece que tenga acceso al
> sqlcommandtimeout.
> Buscando alternativas, me descargo la SSEUtil y procedo a ejecutar el
> commandtimeout para pasar de 30 segundos a 120 segundos, pero a pesar de
> que
> me informa de que ha cambiado el valor, el "valor de tiempo de espera
> caducado" vuelve a aparecer al ejecutar mi aplicación (el visor de sucesos
> de
> windows muestra que el tiempo transcurrido desde que se "despierta" el SQL
> hasta que se produce el error es de 30 segundos, de lo que deduzco que el
> cambio a 120 segundos no me lo está aceptando).
>
> Lo único que ha cambiado es que antes el "valor de espera caducado"
> aparecía
> constantemente, mientras que ahora únicamente aparece la primera vez que
> ejecuto mi aplicación tras arrancar/reiniciar el ordenador.
> Y el visor de sucesos de windows sigue mostrando error en el SQLEXPRESS
> con
> el mensaje "Failed to generate a user instance of SQL Server due to a
> failure
> in starting the process for the user instance. The connection will be
> closed."
>
> En resumen, sigo estando totalmente perdido. ¿Puede alguien aportar un
> poco
> más de luz?
>
> Gracias!
>
> "Jose Mariano Alvarez" wrote:
>
>> No creo que el error de tiempo de espera este relacionado con ese evento.
>>
>> Revisa la propiedad commandtimeout y cambiala del valor por omision de 30
>> segundos
>> http://msdn.microsoft.com/en-us/lib...meout.aspx
>>
>>
>>
>> Saludos
>>
>>
>> Ing. Jose Mariano Alvarez
>> SQLTotal Consulting
>>
>> (Cambia los ceros por O y saca lo que sobra)
>>
>> Este mensaje se proporciona tal como es, SIN GARANTIAS de ninguna clase.
>> Por
>> favor tratar de indicar la versión de SQL y Service Pack. La inclusión de
>> (CREATE, INSERTS, etc.) para poder reproducir el problema también ayuda.
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> "CharlyE" wrote in message
>> news:
>> > Saludos,
>> >
>> > Trabajo con Visual Basic Express 2008 y SQL Server Express 2005 (SP3).
>> >
>> > A veces cuando ejecuto mi proyecto (ya sea desde el IDE o como código
>> > compilado) recibo un mensaje referente al "valor de tiempo de espera
>> > caducado".
>> >
>> > Consultando el Visor de sucesos de Windows veo que se ha producido el
>> > siguiente error con origen en MSSQL$SQLEXPRESS:
>> >
>> > System.Data.SqlClient.SqlException was unhandled
>> > Class
>> > ErrorCode=-2146232060
>> > LineNumbere536
>> > Message="Failed to generate a user instance of SQL Server due to a
>> > failure
>> > in starting the process for the user instance. The connection will be
>> > closed."
>> > Number372
>> > Procedure=""
>> > Server=".\SQLEXPRESS"
>> > Source=".Net SqlClient Data Provider"
>> > State=1
>> >
>> > He estado investigando un poco y no sé si esto puede estar relacionado
>> > con
>> > el ConnectionTimeout (aunque mi cadena de conexión no me admite este
>> > parámetro). La verdad es que todo esto me tiene bastante confuso.
>> > Cuando salgo de mi aplicación cierro las conexiones a todos los
>> > TableAdapter
>> > que tengo. ¿Debo cerrar alguna conexión más?
>> >
>> > ¿Puede alguien orientarme sobre cómo resolver esta situación?
>> >
>> > Muchas gracias
>>
Respuesta Responder a este mensaje
#7 CharlyE
13/02/2009 - 12:59 | Informe spam
Hola otra vez

De acuerdo con el link a la página de Joe Stagner he borrado la carpeta
antes mencionada y el "valor de tiempo de espera caducado" sigue apareciendo.

Tampoco consigo averiguar cómo cambiar los valores de connectionTimeout y
commandTimeout desde mi código de Visual Basic (aunque tampoco sé si serviría
de algo, porque no entiendo que el problema sólo aparezca una vez, al
arrancar el ordenador, y luego pueda trabajar sin problema)

¿Es posible que la instancia de usuario no quede cerrada? Es que me escama
mucho el mensaje de "Failed to generate a user instance of SQL Server due to
a failure in starting the process for the user instance. The connection will
be closed."

Gracias

"Jose Mariano Alvarez" wrote:

Revisaste el documento que te paso Carlos?

Podrias darnos mas detalles del problema?

Puedes revisar esto tambien
http://blogs.msdn.com/joestagner/ar...tance.aspx


Saludos


Ing. Jose Mariano Alvarez
SQLTotal Consulting

(Cambia los ceros por O y saca lo que sobra)

Este mensaje se proporciona tal como es, SIN GARANTIAS de ninguna clase. Por
favor tratar de indicar la versión de SQL y Service Pack. La inclusión de
(CREATE, INSERTS, etc.) para poder reproducir el problema también ayuda.










"CharlyE" wrote in message
news:
> Buenas,
>
> He estado dando vueltas a la cuestión del commandtimeout.
>
> Desde Visual Basic 2008 Express no parece que tenga acceso al
> sqlcommandtimeout.
> Buscando alternativas, me descargo la SSEUtil y procedo a ejecutar el
> commandtimeout para pasar de 30 segundos a 120 segundos, pero a pesar de
> que
> me informa de que ha cambiado el valor, el "valor de tiempo de espera
> caducado" vuelve a aparecer al ejecutar mi aplicación (el visor de sucesos
> de
> windows muestra que el tiempo transcurrido desde que se "despierta" el SQL
> hasta que se produce el error es de 30 segundos, de lo que deduzco que el
> cambio a 120 segundos no me lo está aceptando).
>
> Lo único que ha cambiado es que antes el "valor de espera caducado"
> aparecía
> constantemente, mientras que ahora únicamente aparece la primera vez que
> ejecuto mi aplicación tras arrancar/reiniciar el ordenador.
> Y el visor de sucesos de windows sigue mostrando error en el SQLEXPRESS
> con
> el mensaje "Failed to generate a user instance of SQL Server due to a
> failure
> in starting the process for the user instance. The connection will be
> closed."
>
> En resumen, sigo estando totalmente perdido. ¿Puede alguien aportar un
> poco
> más de luz?
>
> Gracias!
>
> "Jose Mariano Alvarez" wrote:
>
>> No creo que el error de tiempo de espera este relacionado con ese evento.
>>
>> Revisa la propiedad commandtimeout y cambiala del valor por omision de 30
>> segundos
>> http://msdn.microsoft.com/en-us/lib...meout.aspx
>>
>>
>>
>> Saludos
>>
>>
>> Ing. Jose Mariano Alvarez
>> SQLTotal Consulting
>>
>> (Cambia los ceros por O y saca lo que sobra)
>>
>> Este mensaje se proporciona tal como es, SIN GARANTIAS de ninguna clase.
>> Por
>> favor tratar de indicar la versión de SQL y Service Pack. La inclusión de
>> (CREATE, INSERTS, etc.) para poder reproducir el problema también ayuda.
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> "CharlyE" wrote in message
>> news:
>> > Saludos,
>> >
>> > Trabajo con Visual Basic Express 2008 y SQL Server Express 2005 (SP3).
>> >
>> > A veces cuando ejecuto mi proyecto (ya sea desde el IDE o como código
>> > compilado) recibo un mensaje referente al "valor de tiempo de espera
>> > caducado".
>> >
>> > Consultando el Visor de sucesos de Windows veo que se ha producido el
>> > siguiente error con origen en MSSQL$SQLEXPRESS:
>> >
>> > System.Data.SqlClient.SqlException was unhandled
>> > Class
>> > ErrorCode=-2146232060
>> > LineNumbere536
>> > Message="Failed to generate a user instance of SQL Server due to a
>> > failure
>> > in starting the process for the user instance. The connection will be
>> > closed."
>> > Number372
>> > Procedure=""
>> > Server=".\SQLEXPRESS"
>> > Source=".Net SqlClient Data Provider"
>> > State=1
>> >
>> > He estado investigando un poco y no sé si esto puede estar relacionado
>> > con
>> > el ConnectionTimeout (aunque mi cadena de conexión no me admite este
>> > parámetro). La verdad es que todo esto me tiene bastante confuso.
>> > Cuando salgo de mi aplicación cierro las conexiones a todos los
>> > TableAdapter
>> > que tengo. ¿Debo cerrar alguna conexión más?
>> >
>> > ¿Puede alguien orientarme sobre cómo resolver esta situación?
>> >
>> > Muchas gracias
>>
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida