Благодаря помощи форумчан я у себя поднял и настроил под windows связку OSMOSIS + mySQL.
Использовался модифицированный osmosis по ссылке от Jagor.
Несколько дней назад перестали импортироваться ежечасные обновления.
Предположительная причина - дублирование тегов точек (например, как в http://www.openstreetmap.org/browse/node/386480254/history , т.к. в истории создается уникальный индекс из полей id, version и k)
Одновременно после миграции 0.6 стали возникать проблемы с версиями элементов, поэтому было принято решение перезалить в локальную базу полный дамп.
Скачал дамп planet-090506.osm.bz2 , создал заново базу в mySQL скриптом с http://gweb.bretth.com/apidb06-mysql-v25.sql
Запускаю osmosis --read-xml-0.6 “C:\planet-090506.osm.bz2” --bounding-polygon-0.6 file=“c:\navi\russian_federation.poly” --write-mysql-0.6 user=“openstreetmap” database=“osm” forceUtf8=yes validateSchemaVersion=no
Осмосис вылетает с ошибкой:
C:\planet-090506.osm.bz2. publicId=(null), systemId=(null), lineNumber=6663, c
olumnNumber=128.
at org.openstreetmap.osmosis.core.xml.v0_6.XmlReader.run(XmlReader.java:
114)
at java.lang.Thread.run(Unknown Source)
Caused by: org.xml.sax.SAXParseException: XML document structures must start and
end within the same entity.
Скачиваю предпослений дамп, то же самое.
Скачиваю последний осмосис (0.31.1), там еще интереснее:
java -cp C:\NAVI\Osmosis\osmosis.jar;C:\NAVI\Osmosis\lib\bzip2-20090327.jar;C:\NAVI\Osmosis\lib\commons-logging-1.0.4.jar;C:\NAVI\Osmosis\
ib\jpf-1.5.jar;C:\NAVI\Osmosis\lib\mysql-connector-java-5.1.6.jar;C:\NAVI\Osmosis\lib\postgis-1.3.2.jar;C:\NAVI\Osmosis\lib\postgresql-8.3-603.jdbc4.jar;C:\NAV
\Osmosis\lib\stax2-api-3.0.1.jar;C:\NAVI\Osmosis\lib\woodstox-core-lgpl-4.0.3.jar org.openstreetmap.osmosis.core.Osmosis --read-xml-0.6 "C:\planet-090429.osm.
z2" --bounding-polygon-0.6 file="c:\navi\russian_federation.poly" --write-mysql-0.6 user="openstreetmap" database="osm" forceUtf8=yes validateSchemaVersion=no
08.05.2009 12:55:56 org.openstreetmap.osmosis.core.Osmosis run
INFO: Osmosis Version 0.31
08.05.2009 12:55:56 org.openstreetmap.osmosis.core.Osmosis run
INFO: Preparing pipeline.
08.05.2009 12:55:56 org.openstreetmap.osmosis.core.Osmosis main
SEVERE: Execution aborted.
org.openstreetmap.osmosis.core.OsmosisRuntimeException: Task type write-mysql-0.6 doesn't exist.
at org.openstreetmap.osmosis.core.pipeline.common.TaskManagerFactoryRegister.getInstance(TaskManagerFactoryRegister.java:60)
at org.openstreetmap.osmosis.core.pipeline.common.Pipeline.buildTasks(Pipeline.java:50)
at org.openstreetmap.osmosis.core.pipeline.common.Pipeline.prepare(Pipeline.java:112)
at org.openstreetmap.osmosis.core.Osmosis.run(Osmosis.java:79)
at org.openstreetmap.osmosis.core.Osmosis.main(Osmosis.java:30)
org.openstreetmap.osmosis.core.OsmosisRuntimeException: Task type write-mysql-0.6 doesn’t exist.
Пробовал и просто --write-mysql, результат такой же.
Кто сталкивался и как бороться?