Ошибки · Решение
SQLite SQLITE_INTERRUPT (9): операция была прервана
Запрос не завершился по внешней команде отмены, а не из-за повреждения базы.
Короткий ответ
SQLITE_INTERRUPT (9) означает, что выполняемая операция остановлена вызовом `sqlite3_interrupt()`. Сверьте код с официальной поддержкой производителя и выполните только безопасные шаги.
Что означает ошибка
Запрос не завершился по внешней команде отмены, а не из-за повреждения базы.
Возможные причины
- Приложение отменило долгий запрос по timeout/cancel.
- Другой поток вызвал sqlite3_interrupt на той же connection.
- UI/user cancellation намеренно остановила вычисление.
Что проверить
- Сопоставьте ошибку со временем cancel/timeout события в приложении.
- Проверьте, какая connection была передана в sqlite3_interrupt.
- Убедитесь, что cancellation не срабатывает из-за слишком короткого deadline.
Безопасные шаги
- Если отмена штатная, обработайте SQLITE_INTERRUPT как контролируемый outcome.
- Исправьте ошибочный cancel path, если прерывается не тот запрос.
- Для реально долгого SQL оптимизируйте plan вместо бесконечного увеличения timeout.
Только безопасные обратимые действия. Опасные шаги — только по официальной инструкции и с пониманием рисков.
Когда нужен сервис
- Если interrupt появляется без явного cancel, разработчику нужно трассировать владельца connection и все вызовы sqlite3_interrupt.
Похожие ошибки
- /errors/sqlite-busy-5/
- /errors/sqlite-locked-6/
- /errors/sqlite-readonly-8/
Что учитывать
Точная причина зависит от версии ПО/прошивки, полного текста ошибки и контекста. Официальная инструкция имеет приоритет.
Официальный источник
Расшифровка сверена с официальными страницами поддержки из источников ниже. Редакция N1RO не диагностировала ваш конкретный случай.