Источник данных Weblogic JDBC не дает “Ресурсов, в настоящее время доступных в пуле” со всего 1 активным соединением

Я использую weblogic JDBC источник данных, и моим DB является Oracle, 10 г, ниже конфигурация.

Это раньше хорошо работало, но внезапно это начало давать проблему, посмотрите ниже исключения.

Источник данных Weblogic JDBC, java.sql. SQLException: не Может получить XAConnection weblogic.common.resourcepool. ResourceLimitException: Никакие ресурсы, в настоящее время доступные в пуле

 

xmlns = "http://www.bea.com/ns/weblogic/90" xmlns:sec = "http://www.bea.com/ns/weblogic/90/security" xmlns:wls = "http://www.bea.com/ns/weblogic/90/security/wls" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation = "http://www.bea.com/ns/weblogic/920 http://www.bea.com/ns/weblogic/920.xsd"> XL-Reference-DS
jdbc:oracle:oci:@abc.COM oracle.jdbc.driver. Пользователь OracleDriver протокол dll ocijdbc10 пароля password DEV_260908 oci oracle.jdbc. V8Compatible истинный baseDriverClass oracle.jdbc.driver. OracleDriver
1 100 1 истинный SQL ВЫБИРАЮТ 1 ИЗ ДВОЙНОГО

DataJndi OnePhaseCommit

Это исключение происходит в dev среду, где подключенный пользователь - только один.

Я знаю, что это связано для объединения макс. размера, но я также подозреваю, что это могло произойти из-за Oracle, могла бы быть Oracle, не может создать соединения.

Мои вопросы:

  1. Там какой-либо параметр отладки/входа должен включить вход источника данных так, чтобы я мог проверить количество соединений, полученных, выпущенных и неиспользованных в журналах?
  2. Как я могу проверить ограничение соединения оракула на конкретного пользователя?

5
задан MackM 26 February 2018 в 17:34
поделиться

1 ответ

Похоже, что что-то постепенно теряет соединения, как вы, кажется, подозреваете, а вы ' re в конечном итоге достигнет максимального размера пула JDBC. Я не думаю, что вы сначала достигли пределов Oracle, так как вы получите исключение ORA, а также не сможете напрямую подключиться к базе данных.

Вы можете настроить источник данных для сбора информации профиля из консоли WebLogic; в меню структуры домена перейдите в сервисы-> JDBC-> источники данных, выберите свое соединение и перейдите на вкладку диагностики в разделе конфигурации. Но вы можете получить приблизительное представление об основных характеристиках пула; перейдите в среду-> серверы, выберите свой сервер и посмотрите вкладку JDBC под мониторингом. Это показывает активные соединения и максимальную отметку. Если какой-либо из них совпадает с вашим максимальным размером пула, это довольно хороший признак утечки.

Со стороны Oracle вы можете посмотреть количество сеансов, разрешенных с помощью show parameters sessions , но также необходимо проверить show parameters процессов , что может ограничить его еще больше (и некоторые из они необходимы внутренним процессам, таким как pmon ). Вы можете увидеть, сколько у вас открытых подключений, с помощью чего-то вроде select count (*) from v $ session where username = 'DEV_260908'; . Основываясь на ошибке, я бы не ожидал, что это будет очень близко к пределам сеанса / процесса, но должно соответствовать количеству активных подключений с консоли.

8
ответ дан 14 December 2019 в 04:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: