Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

java.sql.SQLException:Exceção de Io:Pipe quebrado como recuperar sem reiniciar?


A seguir, podem ser as possibilidades que podem estar causando a exceção:

  1. Problema de rede:Essa é a rede entre o banco de dados e o servidor de aplicativos, causando a queda da conexão física após um período de tempo. Provavelmente é devido a um firewall rodando atrás da rede que está configurado para matar conexões db após um período de tempo especificado. Você pode considerar uma solução alternativa para manter a conexão ativa o tempo todo simplesmente reconfigurando seu servidor de aplicativos. Para o Tomcat, você pode tentar adicionar validationQuery="select 'validationQuery' from dua l no arquivo conf da fonte de dados do Tomcat (context.xml)

  2. As conexões com o servidor de banco de dados estão sendo redefinidas e o cliente não é notificado pelo driver de banco de dados. O problema neste caso é que o driver Oracle está descobrindo que o soquete para o DBMS de alguma forma (firewall novamente, talvez?) foi fechado pela outra extremidade. Você pode considerar configurar seu tempo limite de conexão (no pool) mais curto que o tempo limite do servidor de rede/DB como uma solução.