Posts
All the articles I've posted.
-
고치라는 지시부터, 다시 봐야 했다 1편 — 죽은 주석을 고치다가, 또 틀렸다
다음에 뭘 할지 고르는 것부터, `create_file`이 경로가 겹치면 조용히 기존 파일에 이어붙이는 데이터 오염 버그를 고치고, 그 김에 죽은 주석 하나까지 정리하기로 했다. 그런데 그 주석을 고치라고 지시한 문서 자체가 반대 방향으로 또 틀려 있었다.
-
설계까지 다 거치고도, 실행해봐야 보였다 4편 — 없는 줄도 몰랐던 안전망을 찾아냈다
웨이브 병렬화를 배포한 뒤, 그 유명한 다니엘라 아모데이 예시가 여전히 쪼개지지 않았다. 원인을 찾다가 내 첫 실측 자체가 틀렸다는 걸 발견했고, 있는 줄 알았던 기능이 사실 없었다는 것도 알게 됐다.
-
설계까지 다 거치고도, 실행해봐야 보였다 3편 — 레이스를 막을 방법이 아니라, 없앨 이유를 찾았다
청크를 병렬로 요청하는 설계까지만 해두고 미뤄뒀던 구현을 다시 열었다. 그런데 설계 문서와 계획서를 다 거치고도, 진짜 버그는 실행이 되어서야 보였다.
-
설계까지 다 거치고도, 실행해봐야 보였다 2편 — 병합을 빼자, 분할이 살아났다
요약만 하고 분할은 거의 안 되는 것 같다는 관찰에서 시작했다. 배치 크기를 의심했는데, 더 깊이 파보니 진짜 원인은 따로 있었다 — ingest가 한 번에 너무 많은 판단을 하고 있었다. 그리고 그 발견이 속도·비용 설계까지 이어졌다.
-
설계까지 다 거치고도, 실행해봐야 보였다 1편 — 테스트가 원천적으로 못 잡는 자리에 버그를 심어놓고 있었다
5편을 쓰고 나서 같은 스크린샷을 다시 보다가, 흐릿하게 렌더링되는 링크를 하나 더 발견했다. 원인을 찾아 고치고 태스크 리뷰까지 통과했는데, 최종 리뷰가 진짜 레이스 컨디션을 잡아냈다 — 그것도 테스트가 구조적으로 절대 재현할 수 없는 방식으로 숨어 있던 버그였다.