Что вызывает ошибку сети IOException: время ожидания подключения истекло: подключиться?

Иногда теряется соединение с базой данных в одной из наших сред. Тот же код (автоматические тесты) отлично работает в среде DEV, но когда дело доходит до TEST, он иногда теряет соединение.

Из логов получаю следующее:

jdbc:jtds:sqlserver://HOST_HERE:PORT_HERE/DB_NAME_HERE;instance=sqlext;domain=DOMAIN_HERE;useNTLMv2=true;multiSubnetFailover=true
java.sql.SQLException: Network error IOException: Connection timed out: connect

с помощью JTD-драйвера

Никаких проблем с правами доступа.

  • Подключаюсь к бд - без проблем,
  • Я проверил формат строки подключения здесь http://msdn.microsoft.com/en-us/library/ms378428(v=sql.110).aspx выглядит правильно
  • Проверил, отсутствуют ли индексы - все в порядке. Думал, даже если бы они отсутствовали, это было бы проблемой и в среде DEV, но это только в TEST.

Пожалуйста, направьте меня к решению


person Sunguresat    schedule 15.05.2019    source источник
comment
Это может быть тайм-аут сети для неактивных подключений. Вам следует искать параметр автоматического переподключения, но это может быть невозможно, прочитав stackoverflow.com/questions/42416198/   -  person Sascha    schedule 15.05.2019