Hi Simon,

The relevant error in your full log is below.  All other errors in the log
are caused by other threads failing when they can't write to their
destination (ie. the db writing thread is downstream of all other threads).

SEVERE: Thread for task 25-buffer failed
> org.openstreetmap.osmosis.
core.OsmosisRuntimeException: Unable to
> insert a new changeset for user with id -1.
>        at
org.openstreetmap.osmosis.apidb.v0_6.impl.ChangesetManager.addChangeset(ChangesetManager.java:160)
>        at
org.openstreetmap.osmosis.apidb.v0_6.impl.ChangesetManager.addChangesetIfRequired(ChangesetManager.java:175)
>        at
org.openstreetmap.osmosis.apidb.v0_6.ApidbWriter.process(ApidbWriter.java:1084)
>        at
org.openstreetmap.osmosis.core.buffer.v0_6.EntityBuffer.run(EntityBuffer.java:74)
>        at java.lang.Thread.run(Thread.java:679)
> Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:
> Unknown column 'changeset_id' in 'field list'
>        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
>        at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
>        at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>        at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
>        at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
>        at com.mysql.jdbc.Util.getInstance(Util.java:386)
>        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1052)
>        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3609)
>        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3541)
>        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2002)
>        at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2163)
>        at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2624)
>        at
com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2127)
>        at
com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2427)
>        at
com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2345)
>        at
com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2330)
>        at
org.openstreetmap.osmosis.apidb.v0_6.impl.ChangesetManager.addChangeset(ChangesetManager.java:148)
>        ... 4 more

There were some changes made to the apidb schema recently where columns
named "id" were renamed to "xxxx_id".  For example, the nodes table now
contains a node_id column instead of id column.  I'm guessing this is what
is tripping you up.

Do you have to use MySQL?  Osmosis still contains the MySQL but it is no
longer tested.  It may be necessary to update the MySQL schema to match the
PostgreSQL schema.

Brett
_______________________________________________
osmosis-dev mailing list
[email protected]
http://lists.openstreetmap.org/listinfo/osmosis-dev

Reply via email to