콘텐츠

strace 추적으로 8μs 차이의 동시성 버그 찾기

스토리 · 인프런 테크 · 2026.02.20

안녕하세요! 오늘은 DevOps 엔지니어가 겪은 흥미로운 디버깅 사례를 소개해 드릴게요. shaka-packager를 사용하여 영상을 DASH나 HLS 포맷으로 패키징하던 중, 병렬 처리 과정에서 간헐적으로 발생하는 파일 쓰기 오류를 strace로 추적하여 해결한 경험담입니다. 처음에는 단순한 환경 문제인 줄 알았으나, 재시도 시 성공하는 등 수상한 패턴을 보였습니다. 로그만으로는 원인을 알 수 없었던 이 문제를 system call 레벨까지 내려가 분석한 결과, 디렉토리 생성 시 발생하는 race condition이 근본적인 원인임을 밝혀낼 수 있었습니다. 구체적으로는 두 스레드가 동시에 디렉토리 존재 여부를 확인하고 생성하는 과정에서 발생하는 오류를 다루고 있습니다. 기술적인 깊이를 더하고 싶은 엔지니어분들께 유용한 사례가 되길 바랍니다.