Tengo un programa que se comunica a una base de datos y hace una
consulta "x" simple, hasta aqu� vamos bien, este .exe est� con varios
clientes (cada uno se conecta a su propia base de datos) y funciona
bien.. pero recibimos una llamada de un cliente que dice que cuando se
realiza la consulta "x" todos los dem�s equipos se quedan congelados,
que solamente cierran la pantalla de la consulta "x" y ya los deja
trabajar en las dem�s terminales.
Nos conectamos y efectivamente, mientras no hagan la consulta "x" todo
bien, en cuanto uno la haga los dem�s equipos se quedan en stand by
hasta que cierren la pantalla.
lo que se hizo fue ver que SPID estaban ejecutando, con la siguiente
instrucci�n:
select * from master..sysprocesses
where status = 'runnable'
AND Program_Name='Mi App'
order by CPU
desc
y este me arroja que el SPID 125 es el que me est� bloqueando, teniendo
en el campo de CPU valores muy altos, entonces ejecutamos KILL 125 y
listo, ahora si permite que las demas terminales se puedan conectar.
El problema est� que cuando alguien vuelve a abrir la consulta "x" otra
vez se vuelve a bloquear, y hay que correr el script anterior, cosas que
no es nada pr�ctico.
Mi duda es.. como le puedo hacer para que una vez que le de kill no se
vuelva a bloquear, o que mas debo de hacer para que ya no me aparezca el
problema de nuevo???
Esto es lo que me arroja la consulta anterior:
spid 125
kpid 2540
blocked 0
waittime 10062
lastwaittype NETWORKIO
dbid 6
uid 0
cpu 79
physical_io 0
memusage 11
login_time 29-Oct-09 15:50:20
last_batch 29-Oct-09 15:50:20
ecid 0
open_tran 0
status runnable
hostname GAMMA
program_name Mi App
hostprocess 736
cmd SELECT
nt_domain GAMMA
nt_username Administrador
net_address 00192142013C
net_library LPC
loginame GAMMA\Administrador
stmt_start 88
stmt_end -1
Saludos!
--
-----------------------------
"Caminar sobre el agua y desarrollar software a partir de unas
especificaciones es f�cil, si ambas est�n congeladas."
Edward V. Berard, ingeniero inform�tico
"Javier Leal" <noex...@hotmail.com> wrote in message
news:e%23vgNbOW...@TK2MSFTNGP06.phx.gbl...
Saludos!
Carlos Sacristan escribi�:
seguro que tienes un store procedute que ejecuta procesos y esta
dentro de una transaccion.
por este motivo se cuelgan las demas compuadoras.
tienes que hacer un seguimiento para que que store esta haciendo
conflicto. puedes usar el profiler para depuarar
saludos