У нас есть корпоративное приложение, работающее с несколькими клиентами, и эта проблема возникает только с одним клиентом, и мы не можем воспроизвести локально.
Наша аварийная система показывает случайные ошибки только для чтения - попытка написатьтолько для чтения базы данных.Это происходит только для некоторых пользователей.
Приложение использует FMDB в качестве оболочки SQL (версия 2.5).В БД уже есть данные до ошибки.После ошибки в БД есть записи, поэтому она как-то перестала быть доступной только для чтения или ошибка только для чтения.
Возможно ли для sqlite3 db выдавать ошибки только для чтения, когда она не доступна только для чтения?
Я попытался проверить, была ли это проблема с многопоточностью, открыв второй экземпляр БД и породив 2 зацикленных потока, один сделал выбор из таблицы, а другой - вставку.Я получил сообщение об ошибке «Ошибка блокировки базы данных, а не ошибка только для чтения».
Может ли из-за проблем с многопоточностью вызывать ошибки только для чтения?
Приложение установлено на устройствах с помощью SOTI MDM.Это единственный клиент с SOTI, поэтому может ли SOTI вызывать такие проблемы?
Будет ли резервное копирование системы или резервное копирование в облачном хранилище задавать файлы только для чтения во время выполнения резервного копирования и, следовательно, для БД временно только для чтения?Я достигаю здесь, но у меня нет идей.
У кого-нибудь есть идеи, что может вызвать это?