host 조회 실패를 확정 실패로 내려 재시도를 태우지 않는다 - #43
Open
m-a-king wants to merge 1 commit into
Open
Conversation
- InternalHostGuard 가 UnknownHostException 을 upstreamError(UPSTREAM_ERROR, 일시)로 번역해, 호출자가 재시도 2회를 소진한 뒤 reason=retry_exhausted 로 종결하던 것을 unresolvableHost(INVALID_URL, 확정)로 바꾼다 - 두 가지가 어긋나 있었다. 운영 사유가 "외부 불안정"으로 기록돼 실제 사유(등록된 주소가 잘못됨)를 가렸고, 확정적으로 실패할 주소에 재등록마다 호출 2회를 다시 태웠다. dev 에서 같은 https://df 가 2회 등록돼 두 번 다 attempt=2 를 소진한 것이 실측이다 - code 는 새로 만들지 않고 INVALID_URL 을 재사용한다. 형식 위반과 결론이 같고 카탈로그에 이미 permanent 로 있어 호출자 매핑이 그대로 맞는다 - escalatable=false — resolve 되지 않는 host 는 헤드리스 브라우저도 도달하지 못한다. blockedHost 에 이어 "무조건 폴백"의 두 번째 예외이며, 근거가 보안이 아니라 성립 불가라는 점을 클래스 Javadoc 에 갈라 적었다 - UnknownHostException 이 NXDOMAIN 과 리졸버 일시 장애를 구분하지 않는 한계는 확정 처리 쪽으로 감수한다. 리졸버 장애는 박스 전역 문제라 호스트 관측이 다룰 일이고, 그 창의 건은 재등록이 새 시도를 만든다. RCODE 로 가르려면 SSRF 가드·IP pin 계약까지 바꿔야 해 별건이다 Closes #42
|
Important Review available on request
Reviews should be triggered manually for repositories with fewer than 10 stars. Select Trigger review above or comment ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Situation
Task
Action
구현
InternalHostGuard가UnknownHostException을 받으면 이제PageFetchException.unresolvableHost를 던지고, 그 팩토리가 codeINVALID_URL과 permanent=true 를 박는다.결정: 어떤 code 로 내릴 것인가
INVALID_URL재사용 (채택)internal_error로 세어지는 창까지 생긴다결정: 리졸버 일시 장애를 구분할 것인가
검증
INVALID_URL세 속성을 모두 세운 예외를 던지는지 본다. 원인 예외가 그대로 실려 오는지도 함께 확인한다(디버깅 단서 유실 방지).Result
연관 이슈