Spring Batch Tasklet에서 예외 발생 시 Slave 커넥션 반환 실패 원인 분석

문제 요약 Spring Batch Tasklet 내부에서 슬레이브(readOnly) DataSource를 통해 조회를 수행 중 예외 발생 시, PlatformTransactionManager의 rollback 처리 후 커넥션이 반환되지 않는 문제가 발생하였습니다. 원인 분석 개선 방안 또는 명시적 반환 방식:

자바(java) 기초 5편.

1. try~catch문 메커니즘     try{      1.      2. (예외발생) int num = 3/0;      3.    }catch(Exception e){  //다형성      4.    }      5.  가. 2에서 예외발생됨 나. 발생된 예외를 JVM 에게 알린다. 다. JVM에서 발생된 예외를 처리 가능한 클래스를 찾는다.     XXXException 을 찾았다.  라. XXXException 클래스를 객체생성한다.            XXXException x = new XXXException(발생된예외정보 ); / by zero 더 읽기