Moin,
ich versuchte mich heute an einem kleinen Skript für osm2pqsql. Leider bekomme ich immer wieder die selbe Fehlermeldung…
2022-07-02 01:47:49 osm2pgsql version 1.6.0
2022-07-02 01:47:49 Database version: 14.3 (Ubuntu 14.3-0ubuntu0.22.04.1)
2022-07-02 01:47:49 PostGIS version: 3.2
2022-07-02 01:47:50 ERROR: Error loading lua config: ./streets.lua:2: attempt to index a nil value (global 'osm2pqsql').
Meine streets.lua sieht wie folgt aus:
local streets = osm2pqsql.define_way_table('osm_streets', {
{ column = 'type', type = 'text' },
{ column = 'name', type = 'text' },
{ column = 'tags', type = 'jsonb' },
{ column = 'geom', type = 'linestring' },
})
local sidepaths = osm2pqsql.define_way_table('osm_sidepaths', {
{ column = 'type', type = 'text' },
{ column = 'name', type = 'text' },
{ column = 'tags', type = 'jsonb' },
{ column = 'geom', type = 'linestring' },
})
local signs = osm2pqsql.define_node_table('osm_trafficsigns', {
{ column = 'sign', type = 'text' },
{ column = 'direction', type = 'integer'},
{ column = 'geom', type = 'point'},
})
local get_highway_value = osm2pgsql.make_check_values_func({
'primary', 'secondary', 'tertiary',
'primary_link', 'secondary_link', 'tertiary_link',
'unclassified', 'residential', 'pedestrian', 'living_street',
'service', 'track', 'footway', 'path', 'cycleway'
})
local get_sidepath_value = osm2pgsql.make_check_values_func({
'yes'
})
function osm2pgsql.process_way(object)
local highway_type = get_highway_value(object.tags.highway)
local sidepath_type = get_sidepath_value(object.tags.is_sidepath)
if not highway_type then
return
end
if object.tags.area == 'yes' then
return
end
if not sidepath_type then
streets:add_row({
type = highway_type,
tags = object.tags,
name = object.tags.name,
geom = { create = 'line' }
})
else
sidepaths:add_row({
type = highway_type,
tags = object.tags,
name = object.tags.name,
geom = { create = 'line' }
})
end
end
function osm2pgsql.process_node(object)
if object.tags.highway == 'traffic_sign' then
signs:add_row({
sign = object.tags.traffic_sign,
direction = object.tags['traffic_sign:direction'],
geom = { create = 'point' }
})
end
end
Ich bin bisschen ratlos und verstehe nicht, wo das Problem liegt. Vielleicht kann ja jemand mit mehr Erfahrung mit osm2pgsql helfen.