USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Timeout no SQL
Claudio EngeSys
PARANAGUA
PR - BRASIL
ENUNCIADA !
Postada em 12/09/2006 08:12 hs            
Pessoal,
 
Tenho recebido constantemente a mensagem de timeout em alguns processos da minha aplicação.
Em praticamente todos os casos é uma situação onde tenho alguma geração ou looping de inserção de dados. O estranho é que isso não ocorre o tempo todo. Por exemplo, só pra testar, montei uma rotina só com um looping copiando dados de uma tabela para a outra; travou com a mensagem de timeout 2 vezes em torno de 2000 registros. Da terceira vez em diante, a mesma rotina chegou a gravar até 150000 registros e não travou mais. Esquisito não?
 
O que pode estar acontecendo?
 
O único lugar que eu verifiquei no SQL que tem algo com timeout já está como "0" (unlimited).
 
Agradeço por qualquer idéia pois já estou ficando maluco com esse erro.
 

Claudio Alves.
   
Elieser Topassi
Pontos: 2843 Pontos: 2843
SÃO JOSÉ DO RIO PRETO
SP - BRASIL
Postada em 12/09/2006 18:45 hs            
Existem propriedades ConnectionTimout e CommandTimeout em 3 objetod da ADO:
Connection, Command e Recordset...
seta elas nos objetos que vc ta usando pra 0...
Agora, isso que voce relatou de as vezes funcionar e as vezes nao,
eu tive um problema parecido em uma rede bastante extensa...
resolvemos o problema colocando algumas switchs como repetidor de sinal entre pontos muito distantes, e instalando um servidor de dominio (Win2k03) configurado de forma a liberar todo o trafego da rede dos cabos que levavam ao SQL Server...
Não sei se esse tipo de solução seria para o seu caso, apenas exemplifique para mostrar que nem sempre é na programação que está a solução para nossos problemas... quando o erro é uma variavel (nao acontece todas as vezes) o melhor a fazer é procurar outros fatores alem do seu programa e do banco de dados...
pense no desenpenho da maquina, no trafego da rede, na quantidade de usuarios conectados, nas suas instalações fisicas (temperatura, umidade, ruido eletromagnetico)...


Elieser Carlos Topassi
Analista de Sistemas - Desenvolvedor VB/ASP/.Net

e-mail/msn:
elieser_topassi@yahoo.com.br
São José do Rio Preto,SP - Brasil
_____________________________________________________
Emoções "O caminho do tolo aos seus prórios olhos lhe parece reto, mas o sábio ouve conselhos" (Pv 12:15)

     
Claudio EngeSys
PARANAGUA
PR - BRASIL
Postada em 12/09/2006 19:33 hs            
Obrigado pelas dicas Elieser, vou verificar como está o tráfego na rede.
 
Esqueci de comentar um "PEQUENO" detalhe: funcionava normalmente até que a empresa resolveu trocar o servidor e instalar um MS-Windows Server 2003 SBS Premium. Nesta versão Premium, já vem o SQL incluso mas a partir daí é que a coisa começou a dar pau. Já revisei as configurações do SQL e está tudo rigorosamente igual ao anterior que eu tinha instalado no antigo servidor que era um Server 2000.
 

Claudio Alves.
     
Jose.Niz
CURITIBA
PR - BRASIL
ENUNCIADA !
Postada em 12/09/2006 20:40 hs         
Frequentemente vejo pessoas reclamando de timeout no SQL Server, no entanto, não existe em lugar algum do SQL Server configuração do tão mal falado timeout que tenha efeito sobre o SQL Server como um todo.

Todos os parâmetros de timeout tem efeito sobre o lado cliente (onde esta sendo executado a aplicação), a exceção é o parâmetro LOCK_TIMEOUT do Transact-SQL (que pode ser emitido pelo cliente, no nível de sessão).
O LOCK_TIMEOUT define o tempo de espera pela liberação de um recurso, ou seja, ao emitir um comando UPDATE, INSERT ou DELETE caso o recurso (tabela ou página de dados) esteja em uso a mensagem de timeout irá ocorrer caso o tempo padrão do LOCK_TIMEOUT (que é de 1800 mili-segundos) se esgote.

Exemplo:
SET LOCK_TIMEOUT 1800
GO
   
Elieser Topassi
Pontos: 2843 Pontos: 2843
SÃO JOSÉ DO RIO PRETO
SP - BRASIL
Postada em 12/09/2006 23:00 hs            
Claudio,
Eu ja ouvi outras reclamações semelhantes relacionadas ao SQL Server incluso no Win2k03... geralmente esse problema é resolvido desintalando o SQL Server e instalando novamente (instala do CD do SQL mesmo)...
se voce nao tiver uma licença do SQL pra usar, instala o SQL Server 2005 Express que é gratuito e tem praticamente todas as funções do 2k...
Mas antes disso, verifica mesmo a rede...


Elieser Carlos Topassi
Analista de Sistemas - Desenvolvedor VB/ASP/.Net

e-mail/msn:
elieser_topassi@yahoo.com.br
São José do Rio Preto,SP - Brasil
_____________________________________________________
Emoções "O caminho do tolo aos seus prórios olhos lhe parece reto, mas o sábio ouve conselhos" (Pv 12:15)

     
Alfredo
não registrado
Postada em 17/08/2009 12:24 hs   
Cláudio
Tive  este problema de timeout em uma aplicação que desenvolvi. Consegui resolver, após pesquisar muito. A soluçãoq ue encontrei foi colocar na classe de acesso ao banco o CommandTimeout = 999999. Nunca mais tive o problema. Não sei se seria a solução para o teu caso. Mas fica a idéia.
     
Página(s): 1/2      PRÓXIMA »


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página