Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Java WEB + Apache Tomcat - пропадает коннект к Б / 25 сообщений из 37, страница 1 из 2
18.02.2013, 15:46:00
    #38155860
Timoshenko Arthur
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
Добрый день!
Есть Web-app, которое имеет подключение на БД Oracle(10g). Все работает стабильно.
Приложение крутится на Tomcat 6. Приложение и БД на разных серверах.
После простоя ночью(когда сервис не "трогают") пропадает коннект к базе, что ведет к сообщению в лог томката:
Код: html
1.
2.
Servlet.service() for servlet [dispatcher] in context with path [/testws] threw exception [Request processing failed; nested exception is org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is java.sql.SQLException: Closed Connection] with root cause
java.sql.SQLException: Closed Connection 


После последующих пару запросов коннект снова возобновляется.
Содержание файла context.xml(Сообственно сам коннект)
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
<?xml version="1.0" encoding="UTF-8"?>
<Context antiJARLocking="true" path="/test">
    <Resource name="jdbc/connect" 
              auth="Container" 
              connectionCachingEnabled="true" 
              factory="oracle.jdbc.pool.OracleDataSourceFactory" 
              password="testpassword" 
              type="oracle.jdbc.pool.OracleDataSource" 
              url="jdbc:oracle:thin:@192.168.1.1:1521:test" 
              user="testuser"
              
              testOnBorrow="true"
              testWhileIdle="true"
              timeBetweenEvictionRunsMillis="100000"
              queryTimeout="10000"
              validationQuery="select 1 from dual"
              validationQueryTimeout="2"
              initialSize="15"
              maxActive="15"
              maxIdle="15"
        />
</Context>    


Есть подозрения, что имеено проблема в коннекте. Перерыл мануалы, не получается ничего((
...
Рейтинг: 0 / 0
18.02.2013, 15:48:34
    #38155866
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
Покажите stacktrace и ваш код, который падает. У вас в конфиге указано что DataSource валидирует соединение прежде чем отдать.
Если это действительно так, значит какой-то другой ваш код закешировал соединение, чего он делать не должен.
...
Рейтинг: 0 / 0
18.02.2013, 15:54:57
    #38155877
Timoshenko Arthur
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
Да код, который вызывают ошибку, банален. Просто select из таблички. Сам метод выборки сделан в DAO, из которого, собственно, и происходит коннект, описанный выше.
Впорос имеено в том, почему может происходить такое? Если бы коннект обрушился полностью - то он не должен был бы возобновятся через некоторое время.
Кстати вот эта часть конфига
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
...testOnBorrow="true"
              testWhileIdle="true"
              timeBetweenEvictionRunsMillis="100000"
              queryTimeout="10000"
              validationQuery="select 1 from dual"
              validationQueryTimeout="2"
              initialSize="15"
              maxActive="15"
              maxIdle="15"...

была добавлена уже после возникновения ошибки. Думал, что стабилизирует коннект
...
Рейтинг: 0 / 0
18.02.2013, 15:57:16
    #38155883
silvan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
BlazkowiczПокажите stacktrace и ваш код, который падает. У вас в конфиге указано что DataSource валидирует соединение прежде чем отдать.
Если это действительно так, значит какой-то другой ваш код закешировал соединение, чего он делать не должен.

connectionCachingEnabled="true" не?
...
Рейтинг: 0 / 0
18.02.2013, 16:01:40
    #38155891
Timoshenko Arthur
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
silvanBlazkowiczПокажите stacktrace и ваш код, который падает. У вас в конфиге указано что DataSource валидирует соединение прежде чем отдать.
Если это действительно так, значит какой-то другой ваш код закешировал соединение, чего он делать не должен.

connectionCachingEnabled="true" не?

То есть вы предполагаете, что когда в очередной раз пытается поднять коннект к БД, то он "натыкается" что коннект уже есть и поэтому не может его поднять? Или я что-то не понимаю.
...
Рейтинг: 0 / 0
18.02.2013, 16:02:28
    #38155895
silvan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
Timoshenko Arthur, так после добавления тестового запроса ошибка ушла или нет?
...
Рейтинг: 0 / 0
18.02.2013, 16:04:41
    #38155900
Timoshenko Arthur
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
Нет, не ушла. Протестировали. На утро сервис "упал" из-за отсутствия коннекта и при повторном запросе возобновился. Примечательно то, что коннект пропадает только при простое сервиса более 4-5 часов
...
Рейтинг: 0 / 0
18.02.2013, 16:06:11
    #38155906
silvan
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
Timoshenko Arthursilvanпропущено...


connectionCachingEnabled="true" не?

То есть вы предполагаете, что когда в очередной раз пытается поднять коннект к БД, то он "натыкается" что коннект уже есть и поэтому не может его поднять? Или я что-то не понимаю.
что значит поднять?

java.sql.SQLException: Closed Connection

Это означает, что соединение было успешно установлено в какой-то момент, но когда вы пытались совершить CRUD, соединение e;t было закрыто вами\кем то еще..
...
Рейтинг: 0 / 0
18.02.2013, 16:07:05
    #38155908
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
silvanconnectionCachingEnabled="true" не?
Что-то не вижу чтобы эта фигня вообще была где-то задокументирована.
...
Рейтинг: 0 / 0
18.02.2013, 16:09:36
    #38155914
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
Пророчий alert.log смотрели?
Может соединение закрывается на сетевом уровне из-за настроек (одного из) серверов?
...
Рейтинг: 0 / 0
18.02.2013, 16:11:39
    #38155919
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
Timoshenko ArthurСам метод выборки сделан в DAO, из которого, собственно, и происходит коннект, описанный выше.
Покажите код где DAO получает Connection.

Timoshenko Arthurбыла добавлена уже после возникновения ошибки. Думал, что стабилизирует коннект
Возможно они не на что не влияют из-за OracleDataSourceFactory. Вместо пула Tomcat у вас используется пул Oracle драйвера. Но то есть какие-то весомые причины?
...
Рейтинг: 0 / 0
18.02.2013, 16:13:28
    #38155923
Timoshenko Arthur
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
Basil A. SidorovПророчий alert.log смотрели?
Может соединение закрывается на сетевом уровне из-за настроек (одного из) серверов?
Смотрел. Ошибки связанной имеено с подключением этого сервлета нет
...
Рейтинг: 0 / 0
18.02.2013, 16:16:23
    #38155930
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
Если вам нужен именно OracleDataSourceFactory, что попробуйте вот так:
Код: xml
1.
2.
3.
4.
5.
<Resource 
... 
connectionCacheProperties=”{MaxStatementsLimit=0, MinLimit=0, InitialLimit=0, ValidateConnection=true, ConnectionWaitTimeout=600, MaxLimit=10000}” 
...
 />
...
Рейтинг: 0 / 0
18.02.2013, 16:16:44
    #38155932
Timoshenko Arthur
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
BlazkowiczTimoshenko ArthurСам метод выборки сделан в DAO, из которого, собственно, и происходит коннект, описанный выше.
Покажите код где DAO получает Connection.

Timoshenko Arthurбыла добавлена уже после возникновения ошибки. Думал, что стабилизирует коннект
Возможно они не на что не влияют из-за OracleDataSourceFactory. Вместо пула Tomcat у вас используется пул Oracle драйвера. Но то есть какие-то весомые причины?

Вот
Код: xml
1.
2.
3.
4.
5.
<jee:jndi-lookup  id="testpool" jndi-name="jdbc/test" />
    <bean id="dao" class="com.libs.dao.Dao">
        <property name="dataSource" ref="testpool"/>
        <property name="rowMaper" ref="daoRowMaper"/>
    </bean>
...
Рейтинг: 0 / 0
18.02.2013, 16:18:01
    #38155935
Timoshenko Arthur
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
Возможно они не на что не влияют из-за OracleDataSourceFactory. Вместо пула Tomcat у вас используется пул Oracle драйвера. Но то есть какие-то весомые причины?

Так просто заведено. И раньше подобных ошибок не было
...
Рейтинг: 0 / 0
18.02.2013, 16:18:57
    #38155939
Timoshenko Arthur
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
Так я понял, что кеширование надо вырубать?
авторconnectionCachingEnabled="true"
...
Рейтинг: 0 / 0
18.02.2013, 16:19:47
    #38155940
Timoshenko Arthur
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
BlazkowiczЕсли вам нужен именно OracleDataSourceFactory, что попробуйте вот так:
Код: xml
1.
2.
3.
4.
5.
<Resource 
... 
connectionCacheProperties=”{MaxStatementsLimit=0, MinLimit=0, InitialLimit=0, ValidateConnection=true, ConnectionWaitTimeout=600, MaxLimit=10000}” 
...
 />


Попробую, конечно. Спасибо. Но результат будет ясен только завтра
...
Рейтинг: 0 / 0
18.02.2013, 16:19:57
    #38155941
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
Timoshenko ArthurВозможно они не на что не влияют из-за OracleDataSourceFactory. Вместо пула Tomcat у вас используется пул Oracle драйвера. Но то есть какие-то весомые причины?
Так просто заведено.
Ну тогда почитайте внимательно про настройку DataSource в Tomcat и в JDBC драйвере оракла. Определитесь какой именно пул вам подойдет лучше.

Timoshenko ArthurИ раньше подобных ошибок не было
Это к админам оракла. Возможно сервер ночью не бутался, или соединения не дропал, потому что таймаут был дольше.
...
Рейтинг: 0 / 0
18.02.2013, 16:20:45
    #38155942
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
Timoshenko ArthurТак я понял, что кеширование надо вырубать?
авторconnectionCachingEnabled="true"
Нет. Нужно разобратся с конфигурацией пула, который вы используете. Или использовтаь пул, в котором вы разбираетесь.
...
Рейтинг: 0 / 0
18.02.2013, 16:22:15
    #38155949
Timoshenko Arthur
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
BlazkowiczTimoshenko Arthurпропущено...

Так просто заведено.
Ну тогда почитайте внимательно про настройку DataSource в Tomcat и в JDBC драйвере оракла. Определитесь какой именно пул вам подойдет лучше.

Timoshenko ArthurИ раньше подобных ошибок не было
Это к админам оракла. Возможно сервер ночью не бутался, или соединения не дропал, потому что таймаут был дольше.

Возможно. Насколько я знаю сервер вообще не перегружается. Может и хранит "повисшие" сессии
...
Рейтинг: 0 / 0
18.02.2013, 16:24:16
    #38155956
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
TIMEOUT Properties смотрели?
...
Рейтинг: 0 / 0
18.02.2013, 16:26:38
    #38155963
Timoshenko Arthur
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
Basil A. Sidorov TIMEOUT Properties смотрели?
Да, смотрел. Тем более что неактивные сессии прибиваются на сервере оракла
...
Рейтинг: 0 / 0
18.02.2013, 16:30:43
    #38155973
am_sasa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
Basil A. Sidorov,

не знаю что там у вас, а у меня отваливалось потому что томкет запускался не сервисом и стояло засыпание компа, может у тебя тоже так?
...
Рейтинг: 0 / 0
18.02.2013, 16:34:52
    #38155987
Timoshenko Arthur
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
am_sasaBasil A. Sidorov,

не знаю что там у вас, а у меня отваливалось потому что томкет запускался не сервисом и стояло засыпание компа, может у тебя тоже так?
Может быть. Томкат крутит отдельный сервер с линухом. Надо у админов поинтересоваться. Я как-то о таком и подумать не мог)))
...
Рейтинг: 0 / 0
18.02.2013, 16:40:45
    #38156005
Timoshenko Arthur
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Java WEB + Apache Tomcat - пропадает коннект к Б
Timoshenko Arthuram_sasaBasil A. Sidorov,

не знаю что там у вас, а у меня отваливалось потому что томкет запускался не сервисом и стояло засыпание компа, может у тебя тоже так?
Может быть. Томкат крутит отдельный сервер с линухом. Надо у админов поинтересоваться. Я как-то о таком и подумать не мог)))
Сказали, что серваки в спящий не уходят. Значит проблема все таки остается.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Java WEB + Apache Tomcat - пропадает коннект к Б / 25 сообщений из 37, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]