powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Hibernate и c3p0: что-то не так
9 сообщений из 9, страница 1 из 1
Hibernate и c3p0: что-то не так
    #38850568
rema174
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hibernate 4.3.0 и все необходимые артифакты есть.
После выполнения количества запросов равных hibernate.c3p0.max_size - больше не соединяет, в чем может быть причина?

Код: xml
1.
2.
3.
4.
5.
6.
		<property name="connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider</property>
		<property name="hibernate.c3p0.min_size">1</property>
		<property name="hibernate.c3p0.max_size">10</property>
		<property name="hibernate.c3p0.timeout">3000</property>
		<property name="hibernate.c3p0.max_statements">50</property>
		<property name="hibernate.c3p0.idle_test_period">300</property>



Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
			SessionFactory factory = HibernateUtil.getSessionFactory();
			Session hSession = factory.openSession();
			Transaction tx = null;
			
			long total = 0;
			try {
				tx = hSession.beginTransaction();
				Criteria count = hSession.createCriteria(UserTable.class);
				count.setProjection(Projections.rowCount());
				total = (long) count.uniqueResult();
				tx.commit();
			} catch (Exception e) {
				if (tx != null)
					tx.rollback();
			} finally {
				hSession.close();
			}
...
Рейтинг: 0 / 0
Hibernate и c3p0: что-то не так
    #38850601
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rema174,
Несколько статей вполне по делу тут:
https://www.google.com/search?q=c3p0 detect leaks
...
Рейтинг: 0 / 0
Hibernate и c3p0: что-то не так
    #38850602
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rema174,

Можно ещё попробовать настроить отдельное логирования для c3p0 и там промониторить где действительно закрываются соединения.

Ещё стоит почитать про управление транзакциями на голом хибернейт.
http://stackoverflow.com/questions/3924079/hibernate-session-close-not-returning-connection-to-pool

Подозреваю что из-за того что ты стартанул транзакцию, хибер решил сам по себе соединения не закрывать, вдруг ты ещё что-то будешь делать в этой же транзакции.
...
Рейтинг: 0 / 0
Hibernate и c3p0: что-то не так
    #38850623
пролетевший
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что делает HibernateUtil.getSessionFactory(); ? если при каждом вызове создается Factory, вот и источник утечки. И тормозов заодно...
...
Рейтинг: 0 / 0
Hibernate и c3p0: что-то не так
    #38850637
rema174
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BlazkowiczПодозреваю что из-за того что ты стартанул транзакцию, хибер решил сам по себе соединения не закрывать, вдруг ты ещё что-то будешь делать в этой же транзакции.
делал и без транзакций, тоже самое

пролетевший А что делает HibernateUtil.getSessionFactory(); ? если при каждом вызове создается Factory, вот и источник утечки.
возвращает static final SessionFactory

везде пишут, чтобы не использовали нативный пул, но в моей программе нормально работает только с ним
...
Рейтинг: 0 / 0
Hibernate и c3p0: что-то не так
    #38850652
rema174
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BlazkowiczЕщё стоит почитать про управление транзакциями на голом хибернейт.
http://stackoverflow.com/questions/3924079/hibernate-session-close-not-returning-connection-to-pool

Подозреваю что из-за того что ты стартанул транзакцию, хибер решил сам по себе соединения не закрывать, вдруг ты ещё что-то будешь делать в этой же транзакции.

спасибо, теперь работает. я пересмотрел до этого кучу примеров, но эта опция не использовалась.

еще пол интернета путается какая опция должна быть больше - timeout или test_period, везде по разному. в большинстве туториалов показан test_period больше, но в комментах люди пишут, что надо чтобы timeout был больше - цирк )
...
Рейтинг: 0 / 0
Hibernate и c3p0: что-то не так
    #38853535
rema174
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
все-таки что-то не так, через какое-то время работы теряется соединение, в логах ошибок не наблюдаю.
что еще может быть?
...
Рейтинг: 0 / 0
Hibernate и c3p0: что-то не так
    #38853614
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rema174что еще может быть?
MySQL убивает не активные соединения.
...
Рейтинг: 0 / 0
Hibernate и c3p0: что-то не так
    #38853632
rema174
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
попробавал добавить еще две опции. все-таки, не так все просто с этим пулом.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Hibernate и c3p0: что-то не так
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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