ОК, поправил. За регистром я пока смотреть не буду, пока основную структуру довести бы.
Кстати, а не ли возможности прогнать что-то вроде причёсывалки названий улиц на названия муниципальных образований (хотя бы привести регистр к единому виду) и по official_status (там вообще зоопарк). Такой бот не разрушает никаких данных но стандартизирует данные для последующей автоматической обработки.
Не очень понятна мысль, если честно. Валидатор находится в состоянии беты и далёк от идеала, все вопросы сразу не решаются а решаются в соответствии с внутреними приоритетами. Дойдут руки и до Краснодарского края. Решений которые устраивают всех не бывает (вот Zkir не любит “ё” и всё тут), поэтому будут те или иные компромиссы. Сейчас я в эти дебри даже лезть не хочу.
В общем на выходных буду проводить большой рефакторинг кода, поэтому вероятность того что валидатор обновится завтра невелика - слишком много где будут переделки, а бегущий в фоне валидатор хорошо подтормаживает комп. Поэтому вероятнее всего следующее обновление будет в понедельник вечером. Но там уже будет много улучшений, как минимум - всё будет работать быстрее
В воскресенье хорошо перекорёжил код, в основном под будущие изменения. В частности добавил оптимизаций в основной алгоритм который пока отнимает больше всего времени. Я ожидал ускорения на 20-30% но на тестовой выборке в 1000 нп скорость увеличилась всего на 5%. Потом оптимизировал ещё. Сегодня запустил валидатор на утреннем дампе. В итоге оказалось что всё стало работать безумно медленно. Валидатор работал на 30% времени дольше чем обычно и до конца ему было работать и работать, я уже ушёл с работы. Такой вот неожиданный результат “оптимизаций”, но в бете это ожидаемо.
Надеюсь что завтра утром валидатор отработает и я опубликую его результаты (если конечно ещё проблем не обнаружится). И потом буду профилировать работу чтобы понять чего же это я так наоптимизировал
“Богатыри - не мы”. Сколько ни пробовал ради общего развития изучать основы программирования - дальше “Хеллоу, Вёрлд!” не продвинулся. Извините за офтоп…
Вместо стандартных 4-х часов валидатор работал почти 9 часов. Но возможно причина не только в кривизне оптимизации а в том что границы аж двух регионов оказались сломаны - Тверской области и Смоленской области!
А алгоритмы частично оптимизированы под то что границы регионов живые, в случае разломанных границ валидатор идёт по неоптимизированной ветке а там реально всё медленнее. Но по любому после окончания оптимизаций эта проблема не будет стоять так остро, просто будет некоторое замедление работы.
И да, почините, пожалуйста, границы. Иначе валидатор будет слишком долго работать …
У меня дамп вчерашний, утренний. В нём граница России не сломана, но ничто не мешало сломать её позже. Её проще проверить в JOSM - результат проверки целости границы будет актуальным (хотя и придётся подождать пока границы загружаются).