[OSM-dev] Osmosis bug with --write-pgsql task

Brett Henderson brett at bretth.com
Fri Oct 19 11:54:35 BST 2012


Hi Mike,

On 16 October 2012 05:57, Michal Migurski <mike at teczno.com> wrote:

> Hello,
>
> I've encountered an error with Osmosis and writing to the snapshot schema
> that might be a bug. I am attempting to add a new extract to an existing
> database, and seeing an error where a new index is trying to be created. At
> this phase, I don't believe Osmosis should be attempting to create indexes.
>

Why don't you believe it should be creating indexes?


>
>         INFO: Processing completion steps.
>         Oct 15, 2012 10:07:22 AM
> org.springframework.beans.factory.xml.XmlBeanDefinitionReader
> loadBeanDefinitions
>         INFO: Loading XML bean definitions from class path resource
> [org/springframework/jdbc/support/sql-error-codes.xml]
>         Oct 15, 2012 10:07:22 AM
> org.springframework.jdbc.support.SQLErrorCodesFactory <init>
>         INFO: SQLErrorCodes loaded: [DB2, Derby, H2, HSQL, Informix,
> MS-SQL, MySQL, Oracle, PostgreSQL, Sybase]
>         Oct 15, 2012 10:07:22 AM
> org.openstreetmap.osmosis.core.pipeline.common.ActiveTaskManager
> waitForCompletion
>         SEVERE: Thread for task 1-rb failed
>         org.springframework.dao.DuplicateKeyException: StatementCallback;
> SQL [ALTER TABLE ONLY users ADD CONSTRAINT pk_users PRIMARY KEY (id)];
> ERROR: could not create unique index "pk_users"
>           Detail: Table contains duplicated values.; nested exception is
> org.postgresql.util.PSQLException: ERROR: could not create unique index
> "pk_users"
>           Detail: Table contains duplicated values.
>                 at
> org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.doTranslate(SQLErrorCodeSQLExceptionTranslator.java:241)
>                 at
> org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:72)
>                 at
> org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:406)
>                 at
> org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:518)
>                 at
> org.springframework.jdbc.core.simple.SimpleJdbcTemplate.update(SimpleJdbcTemplate.java:248)
>                 at
> org.openstreetmap.osmosis.pgsnapshot.v0_6.impl.IndexManager.completeAfterLoad(IndexManager.java:130)
>                 at
> org.openstreetmap.osmosis.pgsnapshot.v0_6.impl.CopyFilesetLoader.run(CopyFilesetLoader.java:111)
>                 at
> org.openstreetmap.osmosis.pgsnapshot.v0_6.PostgreSqlCopyWriter.complete(PostgreSqlCopyWriter.java:108)
>                 at
> org.openstreetmap.osmosis.tagfilter.v0_6.UsedNodeFilter.complete(UsedNodeFilter.java:158)
>                 at
> org.openstreetmap.osmosis.tagfilter.v0_6.TagFilter.complete(TagFilter.java:142)
>                 at
> org.openstreetmap.osmosis.tagfilter.v0_6.TagFilter.complete(TagFilter.java:142)
>                 at
> org.openstreetmap.osmosis.core.progress.v0_6.EntityProgressLogger.complete(EntityProgressLogger.java:61)
>                 at
> crosby.binary.osmosis.OsmosisBinaryParser.complete(OsmosisBinaryParser.java:35)
>                 at
> crosby.binary.file.BlockInputStream.process(BlockInputStream.java:37)
>                 at
> crosby.binary.osmosis.OsmosisReader.run(OsmosisReader.java:37)
>                 at java.lang.Thread.run(Thread.java:679)
>
> From the stack trace I can tell that tasks are in the complete phase.  At
that point the IndexManager class will be rebuilding indexes.  Indexes get
dropped prior to import to improve performance.

Are you sure that the database was empty prior to beginning the import?

Brett
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstreetmap.org/pipermail/dev/attachments/20121019/642c8f54/attachment-0001.html>


More information about the dev mailing list