osm2pgsql mit aktuellen Daten?

Hallo zusammen,

Ich habe letztes Jahr die Daten von Deutschland von Geofabrik geladen und hab diese Daten teilweise in die pgsql Datenbank importiert. Dazu hab ich das Tool osm2pgsql benutzt.

Heute wollte ich mal die aktuellen Daten in eine frische Datenbank einspielen. Jedoch erhalte ich beim importieren folgende Fehlermeldung:

C:\Users\mvollmer>C:\OSM\osm2pgsql\osm2pgsql --create --database osmdb_frankfurt
2 --username osmuser_frankfurt2 --prefix planet --slim --cache 3072  -S C:\OSM\o
sm2pgsql\default.style --hstore C:\OSM\osmosis\osmosis-0.40.1\bin\frankfurt2.osm

osm2pgsql SVN version 0.69-21289M

Using projection SRS 900913 (Spherical Mercator)
Setting up table: planet_point
HINWEIS:  Tabelle »planet_point« existiert nicht, wird übersprungen
HINWEIS:  Tabelle »planet_point_tmp« existiert nicht, wird übersprungen
Setting up table: planet_line
HINWEIS:  Tabelle »planet_line« existiert nicht, wird übersprungen
HINWEIS:  Tabelle »planet_line_tmp« existiert nicht, wird übersprungen
Setting up table: planet_polygon
HINWEIS:  Tabelle »planet_polygon« existiert nicht, wird übersprungen
HINWEIS:  Tabelle »planet_polygon_tmp« existiert nicht, wird übersprungen
Setting up table: planet_roads
HINWEIS:  Tabelle »planet_roads« existiert nicht, wird übersprungen
HINWEIS:  Tabelle »planet_roads_tmp« existiert nicht, wird übersprungen
Mid: pgsql, scale=100, cache=3072MB, maxblocks=393217*8192
Setting up table: planet_nodes
*** WARNING: intarray contrib module not installed
*** The resulting database will not be usable for applying diffs.
HINWEIS:  Tabelle »planet_nodes« existiert nicht, wird übersprungen
HINWEIS:  CREATE TABLE / PRIMARY KEY erstellt implizit einen Index ┬╗planet_node
s_pkey« für Tabelle »planet_nodes«
Setting up table: planet_ways
HINWEIS:  Tabelle »planet_ways« existiert nicht, wird übersprungen
HINWEIS:  CREATE TABLE / PRIMARY KEY erstellt implizit einen Index ┬╗planet_ways
_pkey« für Tabelle »planet_ways«
Setting up table: planet_rels
HINWEIS:  Tabelle »planet_rels« existiert nicht, wird übersprungen
HINWEIS:  CREATE TABLE / PRIMARY KEY erstellt implizit einen Index ┬╗planet_rels
_pkey« für Tabelle »planet_rels«

!! You are running this on 32bit system, so at most
!! 3GB of RAM can be used. If you encounter unexpected
!! exceptions during import, you should try running in slim
!! mode using parameter -s.

Reading in file: C:\OSM\osmosis\osmosis-0.40.1\bin\frankfurt2.osm
Processing: Node(1940k) Way(0k) Relation(0k)COPY_END for COPY planet_nodes FROM
STDIN;
 failed: FEHLER:  doppelter Schl├╝sselwert verletzt Unique-Constraint ┬╗planet_n
odes_pkey«
DETAIL:  Schlüssel »(id)=(2147483647)« existiert bereits.
CONTEXT:  COPY planet_nodes, Zeile 1919790: ┬╗2147483647        645132849
93569313        {"addr:street","Am Graben","addr:postcode","65439","addr:housenu
mber",...«

Error occurred, cleaning up

Was mir dabei aufgefallen ist, das ja 2147483647 das Max. für eine 32-Bit Integer Zahl ist. Kann es sein, das dort der Fehler liegt? Das es sich hier um nen Integerüberlauf handelt?

PGSQL 9.1

Viele Dank
Gruß
mvollmer

So sieht’s aus.
Wie Du vielleicht hier schon mitbekommen hast hat OSM vor kurzem die 32 Bit Grenze “geknackt”.

Grüße, Chris

Danke, hab nun die neue Version von osm2pgsql, wo der Datentyp angepasst wurde.

http://wiki.openstreetmap.org/wiki/Osm2pgsql#Windows