[Geocoding] osm2pgsql error

Gergely Hanti gergely.hanti.reg at gmail.com
Fri Aug 26 17:17:37 BST 2011


Hi All,

I ran into this error when I was trying the version 0.80.0 of osm2pgsql:

PREPARE rel_changed_mark(int4) AS UPDATE planet_osm_rels SET pending = true
WHERE parts && ARRAY[$1] AND parts[rel_off+1:array_length(parts,1)] &&
ARRAY[$1] AND NOT pending;
 failed: ERROR:  function array_length(integer[], integer) does not exist
LINE 3: ...true WHERE parts && ARRAY[$1] AND parts[rel_off+1:array_leng...
                                                             ^
HINT:  No function matches the given name and argument types. You might need
to add explicit type casts.

Where could that array_length function be found? What do I miss?

Environment:
Debian(lenny)
PostgreSQL 8.3 (without applying contrib/_int.sql as osm2pgsql states that
this version doesn't need the intarray module)

Full output:

twain at OSM-Server:~$ ./osm2pgsql/osm2pgsql -lsc -O gazetteer -C 4096 -d
gazetteer italy.osm.bz2
osm2pgsql SVN version 0.80.0 (32bit id space)

Using projection SRS 4326 (Latlong)
NOTICE:  table "place" does not exist, skipping
NOTICE:  type "keyvalue" does not exist, skipping
NOTICE:  type "wordscore" does not exist, skipping
NOTICE:  type "stringlanguagetype" does not exist, skipping
NOTICE:  type "keyvaluetype" does not exist, skipping
NOTICE:  function get_connected_ways(pg_catalog.int4[]) does not exist,
skipping
Mid: pgsql, scale=10000000, cache=4096MB, maxblocks=524289*8192
Setting up table: planet_osm_nodes
NOTICE:  table "planet_osm_nodes" does not exist, skipping
NOTICE:  CREATE TABLE / PRIMARY KEY will create implicit index
"planet_osm_nodes_pkey" for table "planet_osm_nodes"
Setting up table: planet_osm_ways
NOTICE:  table "planet_osm_ways" does not exist, skipping
NOTICE:  CREATE TABLE / PRIMARY KEY will create implicit index
"planet_osm_ways_pkey" for table "planet_osm_ways"
Setting up table: planet_osm_rels
NOTICE:  table "planet_osm_rels" does not exist, skipping
NOTICE:  CREATE TABLE / PRIMARY KEY will create implicit index
"planet_osm_rels_pkey" for table "planet_osm_rels"
PREPARE node_changed_mark(int4) AS UPDATE planet_osm_rels SET pending = true
WHERE parts && ARRAY[$1] AND parts[1:way_off] && ARRAY[$1] AND NOT pending;
PREPARE way_changed_mark(int4) AS UPDATE planet_osm_rels SET pending = true
WHERE parts && ARRAY[$1] AND parts[way_off+1:rel_off] && ARRAY[$1] AND NOT
pending;
PREPARE rel_changed_mark(int4) AS UPDATE planet_osm_rels SET pending = true
WHERE parts && ARRAY[$1] AND parts[rel_off+1:array_length(parts,1)] &&
ARRAY[$1] AND NOT pending;
 failed: ERROR:  function array_length(integer[], integer) does not exist
LINE 3: ...true WHERE parts && ARRAY[$1] AND parts[rel_off+1:array_leng...
                                                             ^
HINT:  No function matches the given name and argument types. You might need
to add explicit type casts.

Error occurred, cleaning up

Regards,
Gergo
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstreetmap.org/pipermail/geocoding/attachments/20110826/51e4c390/attachment.html>


More information about the Geocoding mailing list