본문 바로가기

728x90

vfs

(2)
Tailscale이 19번의 DB 손상 끝에 찾아낸 SQLite의 16년 된 버그 Tailscale이 19번의 DB 손상 끝에 찾아낸 SQLite의 16년 된 버그IT & AI 뉴스 썸네일Tailscale은 6개월 동안 SQLite 데이터베이스 손상을 19번 겪었어요. 재현 조건조차 잡히지 않던 문제를 운영 환경의 트랜잭션 로그와 VFS 추적으로 좁혔고, 끝내 SQLite의 16년 된 WAL-Reset 버그를 찾아냈어요. 1잘 알려진 데이터베이스를 단일 작성자 구조로 썼는데도 장애가 반복됐다는 점이 눈에 띄어요. 원인은 SQLite 자체의 희귀한 경쟁 조건과 Tailscale의 공격적인 수동 체크포인트 운용이 맞물린 데 있었어요. 2핵심 요약구분내용발생 규모6개월 동안 서로 다른 데이터베이스 손상 사고가 19번 발생했어요.직접 원인체크포인트와 쓰기 트랜잭션이 겹칠 때 WAL 페이지가 ..
SQLite는 신뢰성을 어떻게 설계했을까요 SQLite는 신뢰성을 어떻게 설계했을까요AI 뉴스 썸네일SQLite는 스마트폰과 브라우저, 임베디드 기기 안에서 조용히 데이터를 맡고 있어요. Richard Hipp은 54분 분량의 발표에서 이 작은 데이터베이스가 어떻게 장애를 견디는 소프트웨어로 자랐는지 설명했어요. 출발점은 거창한 연구가 아니라 자주 멈추던 Informix 서버를 우회하려는 현실적인 필요였어요. 1핵심 요약구분핵심개발자가 볼 지점테스트 기준배포 객체 코드의 기계어 분기까지 양방향으로 실행해 100% MCDC를 확인해요소스 커버리지 숫자만으로 품질을 단정하기 어려워요오류 재현대체 VFS와 메모리 할당자로 I/O 오류, 메모리 부족, 전원 차단을 의도적으로 만들어요희귀 장애를 재현할 통제 지점을 제품 구조에 넣어야 해요장기 유지보수방대..

728x90