Em 17 de agosto de 2012 13:25, Pedro B. Alves <[email protected]> escreveu: > > >> >> Tenho um cliente que acontece isso em um terminal também. Se parar de usar >> por algum tempo, perde a conexão. Também é win xp. Só acontece neste >> terminal, os demais continuam acessando, mesmo se parado por algum tempo. >> Então, concluí que deve estar perdendo a conexão física, ou por mau contato, >> ou por problema de placa de rede, ou então, por problema no windows. A perda >> pode ser momentânea. Quando vai usar o micro, pode até estar acessando o >> servidor, mas a conexão com o BD já era. >> >> Att. >> >> Ronei Heck >> Clarion 6.1 >> Postgres >> >> > > Neste caso, igual ao meu, acho que deve ser algo com o banco de dados q mata > a conexão. > Vou colocar um timer para a cada X tempo ele faz uma consulta no banco, pra > não ficar ociso. > > Claro que não é a melhor solução pois vai gerar trafego na rede > desnecessário. Mas é a unica idéia que parece solucionar.
Sim, existe uma configuração de timeout para conexões TCP inativas no Windows XP/Vista/7/2003/2008. Só que pesquisei e não consegui encontrá-la, não lembro o nome e local do parâmetro. Já tive problemas parecidos com o PostgreSQL em redes WAN, onde foi necessário subir este parâmetro para algumas horas. Se algum astuto colaborador da lista lembrar/conhecer esta configuração, seria ótimo, pois na época um admin de redes Windows subiu para mim. Só lembre que o Windows é um pouco "burro". Se por acaso sua conexão cair, aumentar este parâmetro vai fazer com que, em alguns casos, a conexão ainda mantenha-se existente no servidor e no PostgreSQL. Parece que o Windows não informa ao SGBD que a conexão caiu, algo assim. Se você usa pool de conexões isso pode "travar" sua aplicação legal... A idéia do Pedro não é feia. Já fiz isso antes em um sistema ERP Desktop, fazendo um SELECT buscando data e hora do banco em intervalos de 3 minutos. Mesmo com 500 conexões ao banco isso não afeta muita coisa em tráfego não. Na minha visão de DBA mesmo uma aplicação Desktop Client/Server deveria "Conectar --> Processar algo --> fechar conexão". Pena que algumas ferramentas/IDE não permitam isso por causa de seus componentes de acesso à dados... -- TIAGO J. ADAMI http://www.adamiworks.com _______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
