-
Notifications
You must be signed in to change notification settings - Fork 70
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Дубли записей в таблице ROOM #61
Comments
Пропуск ошибочных записей запускается автоматически в процессе импорта. А тут из-за отсутствующего ограничения уникальности ошибка не была перехвачена вовремя. Дубликат обнаружился при восстановлении удалённых индексов. А обработать эту ситуацию гораздо сложнее (хотя, на этот счет у меня есть мысли, но это будет больше походить на костыли...). Думаю, надо чуть поправить функцию удаления индексов, чтоб ограничения не удалялись. PS |
Спасибо за ответ. Правильно ли я понимаю, что коммит 83f3c0b решает проблему и без использования параметра --keep-indexes? Кстати, при наличии фильтра скорость что с индексами что без них примерно одинакова - около полутора суток. |
Да, эту конкретную проблему должно решить.
Это уже зависит от железа. На моём тест показал огромную разницу в скорости. Особенно это заметно на таблице house. Чем больше размер уже импортированных данных - тем медленнее идет импорт с индексами. |
К сожалению, в последней версии (1.1.8) перестали вообще применяться фильтры. Пример фильтра:
Программа просто перебирает все значения в таблицах, но ни одна запись не вносится в базу. |
Это очень странно, т. к. этот функционал не менялся последнее время. Такое поведение наблюдается при импорте из DBF? Или с XML тоже? |
Да, что XML, что DBF. Просто все мимо пролетает. База была с нуля создана, заполнена таблицами и затем была попытка сделать полный импорт. |
Как временное решение, можно воспользоваться приведением типов:
Там наверняка проблема именно в несовпадении типов. |
Попробовал все варианты:
Теперь вносятся ВСЕ данные в базу. Дополнения и уточнения:
|
При импорте данных из таблицы room программа вылетает с ошибкой
django.db.utils.IntegrityError: (1062, "Duplicate entry '47aab24a73084c6c8756787b7172076a' for key 'fias_room_roomguid_f8e479d0_uniq'")
Подскажите, пожалуйста, можно ли как-то пропускать дубли и продолжать импорт данных?
Запускаю полный импорт так:
python manage.py fias --src auto --format xml
Полный лог ошибок:
The text was updated successfully, but these errors were encountered: