How throw null Happens - Contributing to Resilience4j
Resilience4j Retry에서 throw null이 만들어지는 구조: 결과 기반 재시도와 인터럽트가 만났을 때 Resilience4j의 Retry는 재시도를 트리거하는 방식이 두 가지다. 첫 번째는 예외 기반 재시도. DB 커넥션이 끊기거나 타임아웃이 발생하면 예외가 던져지고, 라이브러리는 이걸 감지해서 재시도한다. 직관적이고, 대부분의 재시도가 이 경로를 탄다. 두 번째는 결과 기반 재시도 retryOnResult. 예외는 안 났는데 응답 자체가 기대와 다른 경우, 예를 들어 파일 목록을 조회했는데 빈 리스트가 돌아온 경우