Я столкнулся с приведенной ниже проблемой при работе в облаке после выполнения нескольких вызовов БД, но, к сожалению, не могу воспроизвести ее локально. Нужен совет или направление, если чего-то не хватает -
Caused by: oracle.ucp.UniversalConnectionPoolException: Universal Connection Pool already exists in the Universal Connection Pool Manager. Universal Connection Pool cannot be added to the Universal Connection Pool Manager
at oracle.ucp.util.UCPErrorHandler.newUniversalConnectionPoolException(UCPErrorHandler.java:378)
at oracle.ucp.util.UCPErrorHandler.throwUniversalConnectionPoolException(UCPErrorHandler.java:68)
at oracle.ucp.util.UCPErrorHandler.throwUniversalConnectionPoolException(UCPErrorHandler.java:91)
at oracle.ucp.util.UCPErrorHandler.throwUniversalConnectionPoolException(UCPErrorHandler.java:149)
at oracle.ucp.jdbc.PoolDataSourceImpl.createUniversalConnectionPool(PoolDataSourceImpl.java:985)
... 37 common frames omitted
У меня есть следующий bean-компонент DataSource — он был перенесен из OracleDataSource (dataSource.setConnectionCachingEnabled(true) — это устарело)
@Bean("testDataSource")
DataSource getDataSource() throws SQLException {
logger.info("Setting UP DataSource for : {}", DB_POOL_PROVIDER_UCP);
PoolDataSource pds = PoolDataSourceFactory.getPoolDataSource();
pds.setConnectionFactoryClassName("oracle.jdbc.pool.OracleDataSource");
pds.setURL(url);
pds.setUser(username);
pds.setPassword(password);
pds.setConnectionPoolName("TestDBPool");
pds.setMinPoolSize(2);
pds.setMaxPoolSize(50);
pds.setInitialPoolSize(3);
pds.setInactiveConnectionTimeout(60);
pds.setMaxStatements(100);
pds.setAbandonedConnectionTimeout(60);
pds.setConnectionWaitTimeout(30);
pds.setTimeToLiveConnectionTimeout(240);
pds.setTimeoutCheckInterval(60);
pds.setFastConnectionFailoverEnabled(false); //Just one node
pds.setValidateConnectionOnBorrow(true);
pds.setSQLForValidateConnection("select 1 from dual");
return pds;
}
И в большинстве мест используется DataSource
org.springframework.jdbc.object.StoredProcedure
И –
попробуйте (Connection conn = dataSource.getConnection())
SpringBootVersion — 3.3.0
UCP — 21.9.0.0
ojdbc11 - 21.9.0.0
Я пытался получить ConnectionPoolName после локального запуска приложения с использованием случайного API, но это просто Печать указанного выше имени пула БД —
String[] poolNames = UniversalConnectionPoolManagerImpl.getUniversalConnectionPoolManager().getConnectionPoolNames();
for (int i = 0; i < poolNames.length; i++) {
System.out.println(poolNames);
}
Фрагмент POM –
org.springframework.boot
spring-boot-starter-jdbc
com.zaxxer
HikariCP
org.springframework.boot
spring-boot-starter-data-jpa
com.oracle.database.jdbc
ojdbc11
com.oracle.database.jdbc
ucp
Подробнее здесь: https://stackoverflow.com/questions/788 ... -custom-da
Ошибка универсального пула подключений уже существует (Oracle UCP) Пользовательский источник данных SpringBoot ⇐ JAVA
Программисты JAVA общаются здесь
1722574014
Anonymous
Я столкнулся с приведенной ниже проблемой при работе в облаке после выполнения нескольких вызовов БД, но, к сожалению, не могу воспроизвести ее локально. Нужен совет или направление, если чего-то не хватает -
Caused by: oracle.ucp.UniversalConnectionPoolException: Universal Connection Pool already exists in the Universal Connection Pool Manager. Universal Connection Pool cannot be added to the Universal Connection Pool Manager
at oracle.ucp.util.UCPErrorHandler.newUniversalConnectionPoolException(UCPErrorHandler.java:378)
at oracle.ucp.util.UCPErrorHandler.throwUniversalConnectionPoolException(UCPErrorHandler.java:68)
at oracle.ucp.util.UCPErrorHandler.throwUniversalConnectionPoolException(UCPErrorHandler.java:91)
at oracle.ucp.util.UCPErrorHandler.throwUniversalConnectionPoolException(UCPErrorHandler.java:149)
at oracle.ucp.jdbc.PoolDataSourceImpl.createUniversalConnectionPool(PoolDataSourceImpl.java:985)
... 37 common frames omitted
У меня есть следующий bean-компонент DataSource — он был перенесен из OracleDataSource (dataSource.setConnectionCachingEnabled(true) — это устарело)
@Bean("testDataSource")
DataSource getDataSource() throws SQLException {
logger.info("Setting UP DataSource for : {}", DB_POOL_PROVIDER_UCP);
PoolDataSource pds = PoolDataSourceFactory.getPoolDataSource();
pds.setConnectionFactoryClassName("oracle.jdbc.pool.OracleDataSource");
pds.setURL(url);
pds.setUser(username);
pds.setPassword(password);
pds.setConnectionPoolName("TestDBPool");
pds.setMinPoolSize(2);
pds.setMaxPoolSize(50);
pds.setInitialPoolSize(3);
pds.setInactiveConnectionTimeout(60);
pds.setMaxStatements(100);
pds.setAbandonedConnectionTimeout(60);
pds.setConnectionWaitTimeout(30);
pds.setTimeToLiveConnectionTimeout(240);
pds.setTimeoutCheckInterval(60);
pds.setFastConnectionFailoverEnabled(false); //Just one node
pds.setValidateConnectionOnBorrow(true);
pds.setSQLForValidateConnection("select 1 from dual");
return pds;
}
И в большинстве мест используется DataSource
org.springframework.jdbc.object.StoredProcedure
И –
попробуйте (Connection conn = dataSource.getConnection())
[b]SpringBootVersion — 3.3.0[/b]
[b]UCP — 21.9.0.0[/b]
[b]ojdbc11 - 21.9.0.0[/b]
Я пытался получить ConnectionPoolName после локального запуска приложения с использованием случайного API, но это просто Печать указанного выше имени пула БД —
String[] poolNames = UniversalConnectionPoolManagerImpl.getUniversalConnectionPoolManager().getConnectionPoolNames();
for (int i = 0; i < poolNames.length; i++) {
System.out.println(poolNames[i]);
}
Фрагмент POM –
org.springframework.boot
spring-boot-starter-jdbc
com.zaxxer
HikariCP
org.springframework.boot
spring-boot-starter-data-jpa
com.oracle.database.jdbc
ojdbc11
com.oracle.database.jdbc
ucp
Подробнее здесь: [url]https://stackoverflow.com/questions/78823282/universal-connection-pool-already-exists-error-oracle-ucp-springboot-custom-da[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия