어떤 네트워크 파일 시스템이 올바르게 잠금을 구현하지 않습니까? 인용합니다. SQLite 데이터베이스 파일을 손상시키는 방법

파일 손상의 일반적인 원인으로, 문서는 종종 “파일 수준 잠금을 올바르게 구현하지 않는 NFS”또는 이와 유사한 SQLite의 원인으로 인용합니다.

SQLite 데이터베이스 파일을 손상시키는 방법 , 2.1 절

2.1 잠금 구현이 깨져 있거나없는 파일 시스템

SQLite는 기본 파일 시스템에 의존하여 문서가 말한 것처럼 잠금을 수행합니다. 그러나 일부 파일 시스템은 잠금 논리가 버그를 포함하여 잠금이 항상 광고되는 것처럼 작동하지는 않습니다. 특히 네트워크 파일 시스템과 NFS의 경우 특히 그렇습니다. 잠금 프리미티브에 버그가있는 파일 시스템에서 SQLite를 사용하고 두 개 이상의 스레드 또는 프로세스가 동시에 동일한 데이터베이스에 액세스하려고하면 데이터베이스가 손상 될 수 있습니다.

이 – 또는이 효과가있는 것 -은 일반적으로 혼합 된 Windows / Unix 환경에서 10 년 이상 자주 언급되었습니다. 그러나, 나는 결코 어떤 표시도 발견하지 못했다. 어느 네트워크 파일 시스템 (또는 클라이언트 / 서버 조합)은 실제로 위험합니다.

내 고객에게 무엇을 말할 수 있습니까?



답변