블록 동기화가 안 되고 있습니다

v1.6.3 빌드 후 재시작해도 블록이 67108869에 멈춰있습니다.

노드 실행 사양과 로그를 현재 첨부할 수 없어 문의부터 드립니다.
8~9시간 전부터 비슷한 내용의 문의가 검색되는데,
혹시 어떤 문제가 있나요?

과거 버전을 사용하던 일부 EN에서 동일한 현상이 발생하고 있으며, 정확한 원인은 현재 파악 중입니다.
빠른 복구가 필요하시다면, 다음 링크에서 최신 chaindata를 받으신 후에 v1.6.3 버전으로 싱크하시는 것을 권장드립니다.
https://packages.klaytn.net/cypress/chaindata/

최대한 빠르게 원인을 파악한 뒤 공유드리겠습니다.

안녕하세요. Klaytn 개발자 Aidan입니다.
혹시 @yayaya 님 문제가 잘 해결되셨나요?

해당 이슈는 Klaytn의 코드에서 부동소수점 오차로 인하여 발생한 것으로 확인되었습니다.
이 문제를 유발하는 코드는 Klaytn v1.6.0 이상에서는 이미 패치되었기에 최신 버전 사용을 권장드립니다.

v1.6.3으로 빌드하여도 안되었다면, 구버전 사용하여 sync하고 종료하는 과정에서 state가 오염되었으리라 추정됩니다. 이 경우에는 위에 언급드린 것처럼 새로운 chaindata를 다운로드하시길 권장드립니다.

만약 chaindata 변경이 어려우시다면, kend.conf 파일 ADDITIONAL 필드에 --start-block-num 67108864을 추가하셔서 실행해보시는 것을 권장드립니다. 이 방법으로 sync가 정상 처리된다면 67109000 이상 넘어가는 것을 확인하신 후에 추가한 --start-block-num 67108864 설정을 다시 삭제하시면 될 것 같습니다. 해당 옵션을 삭제하지 않으시면 노드 재시작 시 다시 67108864 블록부터 싱크를 시작하게 됩니다.

추가 문의사항 있으면 알려주세요.

감사합니다.

1 Like

@Aidan 님, 답변 잘 받았습니다. 최신 chaindata 받은 후 v1.6.3 싱크하는 방법으로 위 문제는 해결하였습니다. 여분의 test용 EN이 같은 문제를 겪고 있어 안내해주신 다른 방법으로도 해결해보려고 합니다. 상세한 안내 감사 드립니다!

1 Like