metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2015-12-25 09:15 am

Файловые системы и базы данных

Поэтому после оптимизации будут тесты, которые будут имитировать типичные проблемы файловых систем - в основном, это переупорядочение запросов и, поэтому, возможна ситуация, когда информация о commit уже записана, а данные ещё нет.

Это вообще как? Без write barrier вроде же такое никак не вылечить (ну, не считая вуду механизмов в стиле "считаем диск одной из нод распределенной системы, наворачиваем консенсусы и безнадежно воюем с CAP теоремой")

Я просто вообще с трудом понимаю, что можно сделать, если файловая система не представляет хоть каких-нибудь гарантий целостности.

Снова про прогресс.

[identity profile] shalcker.livejournal.com 2015-12-25 07:00 pm (UTC)(link)
Информация ушла в буфер системы например, а информация о коммите реально записалась.

И тут диск на котором данные отключается.

[identity profile] tomarcafe.livejournal.com 2015-12-25 09:55 pm (UTC)(link)
вот ага, тут-то и кроется вопрос - информация о коммите разве не должна записываться _после_ того, как пришло подтверждение о записи. ?
Edited 2015-12-25 21:55 (UTC)

[identity profile] shalcker.livejournal.com 2015-12-26 01:13 am (UTC)(link)
В идеале да. На практике не обязана если не прилагать усилий - скорость может быть важнее.

Обязательный порядок это и есть write barrier - блокировка записи и форсирование её порядка. Что означает никаких системных кэшей, никакой одновременной записи в разные места и т.д.