Ежедневные выгрузки .osm по регионам

Это давно так. Из-за этого в статистике проблемы с показом адресации. Теряются только мемберы, которые сами являются релешйнами. Полагаю, что это баг осмосиса.

PS: Имею две планеты: обновлённую недельными диффами и скачанную напрямую, могу поизучать вопрос…

Alexander Zeinalov, если не сложно - поизучай, закинем баг осмосисовцам, они уже несколько наших исправляли, так что надежда есть. Я тогда пока ничего не делаю.

присоединяюсь к sim. глянь пожалуйста. номера релейшена есть в моём посте.

В дампе planet-100929, обновлённом диффами до 101006 всё так же как и в настоящем plabet-101006:

  <relation id="358215" version="5" timestamp="2010-08-30T20:42:06Z" uid="155088" user="mixdm" changeset="5640286">
    <member type="relation" ref="1105088" role="is_in"/>
    <member type="way" ref="72448059" role="street"/>
    <member type="way" ref="45814261" role="house"/>
    <member type="way" ref="45814263" role="house"/>
    <member type="way" ref="45814265" role="house"/>
    <member type="way" ref="45814266" role="house"/>
    <tag k="address:a6" v="Южная ул."/>
    <tag k="address:type" v="a6"/>
    <tag k="name" v="Южная ул."/>
    <tag k="type" v="address"/>
  </relation>

Полагаю, что надо найти релейшн, созданный и/или изменившийся за исследуемый период, и проверить на нём. Или поискать планету перед 30 августа и соответствующие диффы.

Оказывается, что:

выпадает сразу после обрезки.

В планете есть:

после обрезки нашей полной границей уже нет

Еще поэкспериментирую и закину баг.

Подозреваю, что это из-за того, что в релейшне в таком нет точек и он считается находящимся в 0,0.

Минимальный пример, воспроизводящий баг: http://osm.sbin.ru/osmosis-bug.tgz

Баг проявляется, если в релейшне все мемберы являются релейшнами, и нет никаких точек или линий.

в данном случае это не саблюдается. и у релейшнена у которого вываливается мембер и у этого мембера есть как минимум мемберы - линии

Ну может я не совсем точно описал причину, но баг налицо.

отправил сообщение с примером, посмотрим что скажут

Ответ:

Передай этим чудикам, что они могут не включать второй релейшен в итоговый дамп, но это не даёт им право коверкать data integrity и выкидывать упоминания о том, что у данного релейшена есть такие-то члены, хоть и отстутствующие в дампе.

Уже не один раз задачи автоматизации типа “поменять такие-то релейшены так-то и залить” с применением таких дампов оканчивались потерей данных.

Не оспаривая первого утверждения позволю себе второе прокомментировать - имхо любые автоматические операции на базе допустимо делать только на основе апи-зеркала полной планеты, причем обновляемого в режиме если не minute, то хотя бы hourly. Все остальное - слишком рискованно, особенно работа с ОБРЕЗАННЫМИ дампами.

Обновляемость не обязательна, т.к. в API есть защита от коммита основанного на предыдущей версии объекта.

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

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

При вырезании Белоруссии напрямую из планеты с completeRelations=yes все релейшны оказались на месте.

PS: Кстати, операция эта заняла 4 часа.

Нажо попробовать из базы выпилить… А пилил по полигону или по ббоксу? Поделись параметрами, попробую из базы вырезать.

Использовал belarus.poly отсюда http://gis-lab.info/qa/osm-poly.html с completeWays=yes completeRelations=yes.

В дамп новосибирской области вываливаются объекты из Омской, у которых на нашей области нет ничего. Целые посёлки попали в выгрузку.