silverhawk90
@silverhawk90
Серверный Java Developer

Почему возникает такая ошибка при работе с Java-JDBC-Oracle?

Мой сервер написанный на Java получает различные данные с Oracle используя JDBC драйвер и во время работы очень часто неожиданное выдает ошибку Connection Wrong и дальше отказывается работать с Oracle, причем возникает такое даже при небольшой нагрузке на БД(больше 2-3 одновременных соединений не бывает). При этом через SQL Plus и SQL Developer все нормально работает, и проблема решается только перезапуском Oracle.
Подскажите, в чем может быть причина.
Возникает такая ошибка:
oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:489)
oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:553)
oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:254)
oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:528)
java.sql.DriverManager.getConnection(Unknown Source)
java.sql.DriverManager.getConnection(Unknown Source)
com.database.JdbcConnect.Connect(JdbcConnect.java:21)
com.database.DBOperation.connect(DBOperation.java:45)
com.database.DBOperation.getNotify(DBOperation.java:293)
com.database.DBOperation.getUnreadNotifyCount(DBOperation.java:249)
com.server.ClientHandler.getUnreadNotifyCount(ClientHandler.java:223)
com.server.ClientHandler.messageReceived(ClientHandler.java:76)
com.server.ClientHandler.handle(ClientHandler.java:40)
com.sun.net.httpserver.Filter$Chain.doFilter(Unknown Source)
sun.net.httpserver.AuthFilter.doFilter(Unknown Source)
com.sun.net.httpserver.Filter$Chain.doFilter(Unknown Source)
sun.net.httpserver.ServerImpl$Exchange$LinkHandler.handle(Unknown Source)
com.sun.net.httpserver.Filter$Chain.doFilter(Unknown Source)
sun.net.httpserver.ServerImpl$Exchange.run(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)


1) Соединения у сервера dedicated
2) ограничение на максимально кол-во соединений:
e02f225651cc44a6a368dc5f88245686.bmp
  • Вопрос задан
  • 4138 просмотров
Решения вопроса 1
silverhawk90
@silverhawk90 Автор вопроса
Серверный Java Developer
Проблема была решена. Проблема была в переполнении выделенной памяти для Oracle из-за того что автоматически не закрывались открытые курсоры при разъединении с БД.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Ke1eth
software engineer
Есть какая-то статистика через какое время это происходит?
И еще такой вопрос: это единственное соединение созданное или взятое из пула соединений?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Bell Integrator Ульяновск
До 400 000 ₽
Bell Integrator Хабаровск
До 400 000 ₽
Bell Integrator Ижевск
До 400 000 ₽
28 апр. 2024, в 13:37
15000 руб./за проект
28 апр. 2024, в 13:15
80000 руб./за проект