디버깅 · 개념글
에러 메시지를 위에서부터 읽지 않기로 했다
ZERO-ONE 편집팀 · 읽는 데 2분
맨 위의 `BeanCreationException`만 검색하니 원인이 수십 가지였다. 아래쪽 `Caused by: Unknown column link_state`가 실제 시작점이었다.
예외는 여러 계층이 감싸며 위로 올라온다. 가장 구체적인 cause와 처음 등장하는 우리 코드 프레임을 찾으면 검색 범위가 급격히 줄어든다.
터미널에서 확인
Caused by: java.sql.SQLSyntaxErrorException: Unknown column 'link_state'
at ...
at com.codezerotoone.mvp.growth.insight.sync.InsightSyncStore.persist(InsightSyncStore.java:121)세 가지를 남겼다
- 마지막 Caused by와 SQL state를 먼저 표시한다.
- 위로 올라오며 처음 만나는 프로젝트 패키지 프레임을 찾는다.
- 발생 직전 입력과 배포 변경을 연결한다.
에러 문장 전체를 검색하면 오래된 버전 답이 섞였다. 구체 오류 코드와 라이브러리 버전을 함께 검색하니 필요한 문서가 나왔다.
스택트레이스는 위에서 아래로 읽는 소설이 아니다. 가장 구체적인 원인과 내 코드가 만나는 지점을 찾는 지도다.
이 편의 기록
지나간 사람 0조회 0도움됨 0
끝까지 읽으면 다음 글과 관련 화두로 이어갈 수 있어요.