postgres + GeoDajango - данные не сохраняются - PullRequest
0 голосов
/ 19 декабря 2011

У меня есть небольшой скрипт на python, который отправляет данные в мою django postgres db.Он импортирует соответствующую модель из проекта django и использует функцию .save для сохранения данных в БД без проблем.

Вчера система работала нормально.Я запускал и останавливал мой проект django и скрипт python много раз в течение дня, но никогда не перезагружал и не выключал компьютер до конца дня.

Сегодня я обнаружил, что данныебольше нет в БД!

Это кажется глупым, поскольку я, вероятно, забыл сделать что-то очевидное, но я подумал, что когда функция сохранения вызывается из модели, данные передаются в БД.

1 Ответ

1 голос
/ 25 марта 2013

Таким образом, этот ответ «с чего начать устранение неполадок, подобных этой», поскольку вопрос довольно расплывчатый, и у нас недостаточно информации для эффективного устранения неполадок.

Если это когда-нибудь произойдет снова, первым деломdo - включить ведение журналов операторов для PostgreSQL и посмотреть на операторы по мере их поступления. Это должно показать, что вы начинаете и фиксируете операторы, а также запросы.Устранить проблему такого рода практически невозможно без доступа к запросам.К числу вещей, которые следует искать, относятся пропущенные COMMIT и пропущенные операторы.

После этого, следующее, что нужно сделать, это посмотреть на обстоятельства, при которых ваш компьютер перезагружался.Возможно ли это сделать до ожидаемого коммита?Или он потерял питание и не вовремя сбросил журнал транзакций на диск?

Эти два фактора должны исключить практически все возможные причины на стороне базы данных в среде разработки.В производственной среде для старых версий PostgreSQL вы хотите убедиться, что в системе работает автоочистка, и что вы не получаете предупреждений о переносе xid.В более новых версиях это не проблема, потому что PostgreSQL откажется принимать запросы при приближении к xid wraparound.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...