Валидатор населённых пунктов и границ (http://atd.openstreetmap.ru)

“Богатыри - не мы”. Сколько ни пробовал ради общего развития изучать основы программирования - дальше “Хеллоу, Вёрлд!” не продвинулся. Извините за офтоп…

fserges: ты бы исходники выложил - глядишь можно было и нужную фичу самому сделать тебя не дёргая, и попрофайлить.

Вместо стандартных 4-х часов валидатор работал почти 9 часов. Но возможно причина не только в кривизне оптимизации а в том что границы аж двух регионов оказались сломаны - Тверской области и Смоленской области!

А алгоритмы частично оптимизированы под то что границы регионов живые, в случае разломанных границ валидатор идёт по неоптимизированной ветке а там реально всё медленнее. Но по любому после окончания оптимизаций эта проблема не будет стоять так остро, просто будет некоторое замедление работы.

И да, почините, пожалуйста, границы. Иначе валидатор будет слишком долго работать …

Проверь, не сломана ли граница Россия - Беларусия, а то возможно придётся все переоткатывать.

У меня дамп вчерашний, утренний. В нём граница России не сломана, но ничто не мешало сломать её позже. Её проще проверить в JOSM - результат проверки целости границы будет актуальным (хотя и придётся подождать пока границы загружаются).

Починил . Поломаны были границы - Беларуси, РФ, ЦФО, СЗФО. Надеюсь починил правильно ))
Виновник торжества bim2010

Почти, забыл 1 линию включить.
А почему у нас порезали boundary = administrative на границе с Казахстаном ?

Это какую и в каком отношении? josm показал целостность границ.

freeExec
Надо посильнее увеличить было, там сельский округ нарисован.
http://www.openstreetmap.org/browse/relation/2362240

del

Ну я разве помню, на границе с Белорусией.

Причем тут округ, JOSM ругается на несовместимость тегов, тип границы есть, а признака самой границы нет. Именно по РФ, а не сельский округ.

А, понятно. Там грохнули тег boundary=administrative на всем участке. Вернул на место.

(added)
Кстати на это ругается ? http://www.openstreetmap.org/browse/way/222042824
Это кусок реки без обоих тегов boundary и admin_level.

Если граница области разорвана. То вся область должна быть красной я думаю так правильно

Это нормально, не обязательно выносить теги на линию, хватит и в отношении. Просто там был какой-то огрызок от схемы тегирования.

Если почитать вики, внезапно выясняется, что баундари и админ_левел на линиях вовсе и не обязательны!

Поскольку из-за массово порушенных границ валидатор навыдавал гору ошибок которые, как я надеюсь, неактуальны, то решил не выкладывать результаты текущего прогона. Сегодня попрофилирую самый медленный алгоритм, и или найду багу у себя или пойму что поломанные границы настолько критичны для текущей версии алгоритма. Завтра скачаю утренний дамп и на нём попробую получить более чистый прогон. Заодно и поймём насколько удалось восстановить границы.

Из мелочей - теперь обрабатываются isolated_dwelling, а admin_level=9 почему-то всё равно обрабатывается с ошибками - постараюсь сегодня ещё раз глянуть туда.

А не проще ли скачать osm_updater + poly для обрезки, он работа с pbf и диф за сутки не более 100Мб.

Конкретно сейчас мне важнее добить работу логику самого валидатора, но если описанный выше алгоритм работает то попробую его немного позже.

P.S. А что такое osm_updater? Я погуглив не нашёл ничего standalone, может он как-нибудь иначе называется или часть чего-то большого?

Меня терзают смутные сомнения, что режется по POLY с ошибками, но пристально еще не проверял. Возможно ложечки найдутся, но осадок уже есть.

Здравствуйте, товарищ!
http://wiki.openstreetmap.org/wiki/Osmupdate

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