SQlite3 блокировка окон - PullRequest
       32

SQlite3 блокировка окон

0 голосов
/ 25 января 2012

Я замечаю блокировку (OperationalError) при использовании SQLite 3.7 для приложения на python.Я использую SQLalchemy для ORM. Эта проблема возникает в Windows.Я использую БД на той же машине, что и приложение.

В Ubuntu все работает нормально.Хотите знать, в чем может быть проблема?У какой-то более старой версии sqlite эта проблема была исправлена?

Некоторые мысли:

- Существует проблема блокировки Windows NFS для SQLlite, но так как я используюВ локальной файловой системе эта возможность исключена.

  • Может ли антивирус, работающий на компьютере, вызывать блокировку, так как он читает файл по мере обновления.Блокировка базы данных никогда не снимается (я ждал около 5 минут при доступе к БД через командную строку).Это заставляет меня задуматься, держался ли какой-то процесс зависания, чтобы заблокировать, или процесс был убит.Но, похоже, это был не тот случай, когда работал единственный процесс (сервер бутылок Python), который обращался к БД.Он работает под управлением одного процесса Apache.

1 Ответ

1 голос
/ 25 января 2012

Способ блокировки SQLite описан в http://www.sqlite.org/lockingv3.html - прочитайте его. В Windows вы можете использовать Process Monitor Sysinternal, чтобы отслеживать, кто обращается к файлу, который обнулит виновника.

...