4

В качестве распространенной причины повреждения файлов в документации часто указывается причина «NFS, которая неправильно реализует блокировку на уровне файлов» или что-то подобное, например, для SQLite:

Как повредить файл базы данных SQLite, пункт 2.1

2.1 Файловые системы со сломанными или отсутствующими реализациями блокировок

SQLite зависит от лежащей в основе файловой системы блокировки, как указано в документации. Но некоторые файловые системы содержат ошибки в своей логике блокировки, так что блокировки не всегда ведут себя так, как объявлено. Это особенно верно для сетевых файловых систем и NFS в частности. Если SQLite используется в файловой системе, где блокирующие примитивы содержат ошибки, и если два или более потоков или процессов пытаются получить доступ к одной и той же базе данных одновременно, это может привести к повреждению базы данных.

Об этом - или о чем-то подобном - часто упоминалось уже более десяти лет, обычно в смешанных средах Windows/Unix. Однако я никогда не обнаруживал никаких признаков того, какие сетевые файловые системы (или комбинации клиент / сервер) действительно находятся под угрозой.

Что я могу сказать своим клиентам?

0