Pergunta

Estou executando o Spring + Hibernate 3 + c3p0. Após a iniciar-se, se o banco de dados está em baixo uma exceção é lançada após cerca de 10 minutos. Até então o programa é bloqueado ... eu não incluem xml Spring, Hibernate configuração etc, uma vez que é um problema bastante comum e se existe uma solução que deve haver uma maneira straighforward padrão. Se não posso cortar o código e configuração crucial e colá-lo aqui. Alguém sabe alguma coisa sobre isso? Agradecemos antecipadamente.


Para esclarecer:

O que eu basicamente necessidade é a de saber se existe um invólucro em c3p0 ou hibernação, ou mesmo primavera, em torno da função DriverManager.setLoginTimeout (). Ou uma característica que me oferece essa funcionalidade. O invólucro pode ser através de uma configuração ou algo assim. Eu só quero pegar uma exceção se eu havent ligado à fonte de dados em X segundos, não importa a causa (socket, banco de dados, o mau tempo). E eu quero encontrar um lugar para definir esse X. Para piorar as coisas, a Oracle driver, que é o driver que eu estou usando, não implementa setLoginTimeout () então eu não posso usá-lo diretamente. Eu vim a perceber que não há maneira de resolvê-lo, mas para manualmente gerar um segmento temporizador do meu próprio. Qualquer pessoa pode verificar a situação acima descrita? Muito obrigado.

Foi útil?

Solução

É muito provavelmente não relacionadas com Hibernate / Primavera per se; pool de conexão do banco de dados é responsável por lidar com conexões.

  1. Quais são as suas configurações C3P0?
  2. O banco de dados / driver são seu uso? Há algum causando próprio driver configurações específicas do motorista para esperar / repetição antes de relatar um erro?
  3. "do banco de dados para baixo" significa "até o fim"? Ou isso pode ser causado por algum tipo de limite do soquete?

Atualizar (com base no esclarecimento OP abaixo):

DriverManager.setLoginTimeout() não é usado pelo driver Oracle. OracleDataSource tem seu próprio loginTimeout definição .

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top