Я сталкиваюсь с такой досадной проблемой,
работает на Tomcat 6 и MySQL с использованием TomcatJDBC Lib.
com.mysql.jdbc.CommunicationsException:
Ошибка канала связи из-за основного исключения:
** BEGIN NESTED EXCEPTION **
java.io.EOFException
STACKTRACE:
java.io.EOFException
at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:1934)
at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2380)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2909)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1600)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1695)
at com.mysql.jdbc.Connection.execSQL(Connection.java:3026)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1137)
at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1231)
По прошествии некоторого времени (20sh mins) все соединения с БД, похоже, истекают.
autoReconnect=true"
validationQuery="Select 1"
Все установлено.
Я обрабатываю повторное подключение к базе данных, ион работает нормально, но огромные файлы журналов плохи, я не могу обработать это исключение, чтобы заставить его замолчать.Также этот тип «исправления» не является правильным решением.Есть ли способ:
a) Обработать это исключение молча
b) Исправить эту проблему (у меня нет брандмауэра, о котором я знаю) (нет доступа к my.cnf для конфигурации mysql)
Эта проблема также возникает в Tomcat 5 с Apache jConnector в совершенно другом приложении, без каких-либо брандмауэров, которые могут разорвать соединение.
(перехват EOFException или CommunicationsException для метода, который вызывает соединениене помогает конечно.)
Заранее спасибо.