Iandev Smarter Business - Logo Cor
Navegação no fórum
para criar postagens e tópicos.

Perda / Erro conexão com Oracle. Tarefas paradas em Execução

Perda / Erro conexão com Oracle. Tarefas paradas em Execução

Retorno pesquisa Douglas:

Bom dia,

Estava olhando no Cliente agora pela manhã e continua a situação de dar o erro:
java.sql.SQLException: Exceção de E/S: Connection reset by peer: socket write error
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:111)

Isso acontence no banco de dados “agnew”, parece que logo que inicia o tomcat conecta normal, mas com o tempo perde a conexão ou algo assim, e depois disso, todas as tarefas que tentam acessar esse banco, ficam paradas em execução,
aguardando a disponibilização de uma conexão.

Pesquisei na internet e achei isso no forum da Oracle:
https://forums.oracle.com/forums/thread.jspa?threadID=333986
Ali na segunda responsta o usuário comenta:

It appears that there is a network problem. If the Oracle server is "distantly placed", I'm guessing that there are a variety of switches, routers, firewalls, etc between the app server and the database. One (or more) of them probably have problems keeping a connection open long enough to process 10,000 single-row UPDATE statements.

Your networking group probably has tools to trace where in the network the problem is occurring.

Talvez exista alguma relação com isso.

===============================
Um solução alternativa é usarem, em vez do padrao
connect $v{bdagenew}
usar
$include{connect_bdagenew}include

Conteudo da include:
connect bdagenew jdbc:oracle:thin:@192.168.1.7/xe agnew agnew oracle.jdbc.driver.OracleDriver;

Mudei isso na tarefa 61 para teste.
A diferença é que no primeiro modo, são criadas 4 conexoes com o oracle pelo tomcat, e essas 4 são utilizadas pelas tarefas que precisarem.
No segundo modelo, cada tarefa vai criar sua propria conexao quando necessário.

Douglas