2014-12-11 3 views
1

Я использую bonecp для обработки соединений с базой данных. Вот моя тестовая конфигурация.Bonecp getConnection висит, даже если IdleMaxAgeInMinutes установлен

config.setJdbcUrl("jdbc:mysql://192.168.1.104/" + DATABASE); 
config.setUsername(USERNAME); 
config.setPassword(PASSWD); 
config.setMinConnectionsPerPartition(2); 
config.setMaxConnectionsPerPartition(4); 
config.setIdleMaxAge(30, TimeUnit.SECONDS); 
config.setIdleConnectionTestPeriod(30, TimeUnit.SECONDS); 
config.setConnectionTestStatement("SELECT 1"); 
config.setMaxConnectionAge(1, TimeUnit.MINUTES); 
config.setPartitionCount(1); 

Я пытаюсь получить соединение из пула, после получения 4 соединения из пула на получение пятого соединение GetConnection вешает, как бассейн исчерпало, как я, не закрывая соединения. Но по конфигурации bonecp закрывает соединение после того, как оно не происходит.

Что такое Параметры IdleMaxAge, MaxConnectionAge и IdleConnectionTestPeriod?

ответ

0

Использование

config.setCloseOpenStatements(true); 

Я хотел бы также понять, почему те, заявление остается открытым ..

Смежные вопросы