[Java JPA Error] com.zaxxer.hikari.pool.ProxyConnection - HikariPool-1 - Connection org.mariadb.jdbc.MariaDbConnection@19d3c954 marked as broken because of SQLSTATE(08000), ErrorCode(0) 해결하기
RESTAPI를 통해 학습 평가 요청을하고 콜백을 기다리던 와중에 아래와 같은 에러메세지가 발생하며 요청이 종료되었다.
아래 메사지는 무엇이며 어떻게 해결을 해야할까??
그냥 다음에 해매지 않으려고 이렇게 기록한다.
com.zaxxer.hikari.pool.ProxyConnection - HikariPool-1 - Connection org.mariadb.jdbc.MariaDbConnection@19d3c954 marked as broken because of SQLSTATE(08000), ErrorCode(0)
결론부터 말하자면 현재 mariaDB connection Time 이 hikariCP maxtimeout 보다 짧기 떄문에 생긴 문제이다.
더 자세히 알아보도록 하자
HikariCP 옵션
HikariCP 설정의 시간 단위는 (ms) 이다.
- autoCommit: auto-commit 설정 (default:true)
- connectionTimeout: pool에서 커넥션을 얻어오기전까지 기다리는 최대시간, 허용가능한 wait time울 초과하면 SQLException을 던진다. 설정 가능한, 가장 작은 시간은 250ms 디폴트 값은 30s
- idleTimeout: pool에 일을 안하는 커넥션을 유지하는 시간이다. 이 옵션은 minimumIdle이 maximumPoolSize보다 작게 설정되어 있을 때만 설정한다. pool에서 유지하는 최소 커넥션 수는 (minimumIdle: default=maximumPoolSize(default=10)), idleTimeout 최소값은 10000ms (default는 600000 (10분))
maria time out 설정
SHOW VARIABLES LIKE ‘%timeout’;
connect_timeout 5
delayed_insert_timeout 300
idle_readonly_transaction_timeout 0
idle_transaction_timeout 0
idle_write_transaction_timeout 0
innodb_flush_log_at_timeout 1
innodb_lock_wait_timeout 50
innodb_rollback_on_timeout OFF
interactive_timeout 28800
lock_wait_timeout 86400
net_read_timeout 30
net_write_timeout 60
rpl_semi_sync_master_timeout 10000
rpl_semi_sync_slave_kill_conn_timeout 5
slave_net_timeout 60
thread_pool_idle_timeout 60
wait_timeout 28800
spring boot hikariCp 설정
public static DataSource createDataSource(DataSourceConfig dataSourceConfig) {
HikariConfig config = new HikariConfig();
config.setJdbcUrl(dataSourceConfig.getUrl());
config.setUsername(dataSourceConfig.getUserName());
config.setPassword(dataSourceConfig.getPassword());
config.setDriverClassName(dataSourceConfig.getDriverClassName());
config.setMinimumIdle(dataSourceConfig.getMinimumIdle());
config.setMaximumPoolSize(dataSourceConfig.getMaximumPoolSize());
return new HikariDataSource(config);
}
참고
https://do-hansung.tistory.com/41 https://effectivesquid.tistory.com/entry/HikariCP-%EC%84%B8%ED%8C%85%EC%8B%9C-%EC%98%B5%EC%85%98-%EC%84%A4%EB%AA%85 https://javabom.tistory.com/101
Comments