Consigo me conectar ao servidor de banco de dados (Firebird), executar consultas, todas essas coisas divertidas, mas após um período indeterminado de inatividade, a próxima tentativa de consulta gera o seguinte erro
Unable to complete network request to host "XX.XX.XX.XX".
Error writing data to the connection.
An existing connection was forcibly closed by the remote host. .
SQL Error (code = -902):
Unsuccessful execution caused by a system error that precludes
successful execution of subsequent statements.
Ao operar interativamente usando o Firebird Maestro (relevância desconhecida), após receber esse erro eu digo ao Maestro para desconectar. Posso então executar uma consulta.
Não sei se o tempo limite vem do Firebird ou do servidor Linux ou de outro lugar em nossa rede e não sei o suficiente sobre Linux ou AWS ou nossa rede para saber onde procurar possibilidades. (as alegrias de ser programador em uma empresa muito pequena)
Responder1
Independentemente de onde vem o tempo limite, você deve estar preparado para isso. É possível que existam vários tempos limite e sua conexão seja descartada de qualquer maneira após um período de inatividade.
É melhor usar uma biblioteca de pool de conexões e especificar um tempo limite mais curto do que o que você observa agora (a menos que seja inaceitavelmente baixo).
Poderia ajudar se você descrevesse sua implantação em detalhes, mas acho que, em última análise, você precisa consertar o lado do cliente.