Рано или поздно у любого проекта на SQLite возникает один и тот же вопрос: почему при росте нагрузки запросы на запись вдруг начинают ждать друг друга, а в логах появляется database is locked. Ответ прост и почти всегда неожиданен для тех, кто привык к PostgreSQL или MySQL: SQLite физически не умеет писать в базу из двух мест одновременно — ни в каком режиме. Разберём, почему так устроено, чем journal-mode отличается от WAL, где реально проходит граница применимости SQLite для многопользовательской записи и как понять, что пора переезжать на…
Подробнее →