Hello support,
We were trying to implement a self-hosted ORS in our application to generate isochrones so that we will not be limited with the daily/monthly quota. We chose to install it through docker running in my local machine to test it firsthand. Everything is working smoothly and fine, isochrones are being created except for some coordinate that fails to return an isochrone.
To investigate further, I try to use the API playground and it seems that the faulty coordinate is working fine (though the isochrone created was not centered in the location which was given because there is no public road to the specific location)
Here is the coordinate: Lat: 0.853001, Lon: 36.275431. It is located in Kenya. I also downloaded the Kenya pbf in Geofabrik server and set it up correctly.
Actual request used:
URL:
https://api.openrouteservice.org/v2/isochrones/driving-car
Body:
{"locations":[[0.853001,36.275431]],"range":[900],"attributes":["area"],"interval":900,"range_type":"time","area_units":"km"}
Error received is:
Unable to build an isochrone map.
I already tried to rebuild the graphs and even used both version 8.0.0 and 8.1.0 to see if it will fix the issue. I tried to uncomment some configuration related to routing profiles of driving and walking, and isochrone in the ors-config,yml but unfortunately it doesn’t change a thing.
Can you check what I am doing wrong?
Here is my ors-config.yml
##### openrouteservice settings file #####
# This file contains parameters for openrouteservice.
# For a full list of possible parameters see https://giscience.github.io/openrouteservice/run-instance/configuration/
##### General server settings #####
server:
port: 8082
# error:
# whitelabel:
# enabled: false
# # Keep the context-path at / else the war file run with tomcat will have the context-path of /ors/v2 as well.
# servlet:
# context-path: /ors
# tomcat:
# keep-alive-timeout: 30000
#spring:
# profiles:
# active: default
# mvc:
# servlet:
# path: /
##### Settings related to springdoc #####
#springdoc:
# swagger-ui:
# enabled: true
# path: /swagger-ui
# tryItOutEnabled: true
# filter: false
# syntaxHighlight:
# activated: true
# showExtensions: true
# api-docs:
# path: /v2/api-docs
# version: OPENAPI_3_0
# packages-to-scan: org.heigit.ors
# pathsToMatch: /v2/**
##### Logging settings #####
logging:
# file:
# name: ./logs/ors.log
# pattern:
# console: "%d{yyyy-MM-dd HH:mm:ss} %highlight{%-7p} %style{%50t}{Cyan} %style{[ %-40.40c{1.} ]}{Bright Cyan} %m%n"
# file: "%d{yyyy-MM-dd HH:mm:ss} %p [%-40.40c{1.}] - %m%n"
level:
root: DEBUG
org.heigit: DEBUG
##### openrouteservice specific settings #####
ors:
# cors:
# allowed_origins: "*"
# allowed_headers: Content-Type, X-Requested-With, accept, Origin, Access-Control-Request-Method, Access-Control-Request-Headers, Authorization
# preflight_max_age: 600
# messages:
# ##### ORS endpoints settings #####
endpoints:
# routing:
# enabled: true
# attribution: openrouteservice.org, OpenStreetMap contributors, tmc - BASt
# gpx_name: ORSRouting
# gpx_description: This is a directions instructions file as GPX, generated from openrouteservice
# gpx_base_url: https://openrouteservice.org/
# gpx_support_mail: support@openrouteservice.org
# gpx_author: openrouteservice
# gpx_content_licence: LGPL 3.0
# maximum_avoid_polygon_area: 200000000
# maximum_avoid_polygon_extent: 20000
# maximum_alternative_routes: 3
# matrix:
# enabled: true
# attribution: openrouteservice.org, OpenStreetMap contributors
# maximum_routes: 2500
# maximum_routes_flexible: 25
# maximum_visited_nodes: 100000
# maximum_search_radius: 2000
# u_turn_costs: -1
isochrones:
enabled: true
attribution: openrouteservice.org, OpenStreetMap contributors
maximum_locations: 2
maximum_intervals: 1
allow_compute_area: true
maximum_range_distance_default: 50000
maximum_range_distance:
- profiles: driving-car, driving-hgv
value: 100000
maximum_range_time_default: 18000
maximum_range_time:
- profiles: driving-car, driving-hgv
value: 3600
fastisochrones:
maximum_range_distance_default: 50000
maximum_range_distance:
- profiles: driving-car, driving-hgv
value: 500000
maximum_range_time_default: 18000
maximum_range_time:
- profiles: driving-car, driving-hgv
value: 10800
snap:
enabled: true
# attribution: openrouteservice.org, OpenStreetMap contributors
maximum_locations: 5000
# ##### ORS engine settings #####
engine:
source_file: /home/ors/files/kenya-latest.osm.pbf
# init_threads: 1
# preparation_mode: false
# graphs_root_path: ./graphs
# graphs_data_access: RAM_STORE
# elevation:
# preprocessed: false
# data_access: MMAP
# cache_clear: false
# provider: multi
# cache_path: ./elevation_cache
# profile_default:
# enabled: false
# elevation: true
# elevation_smoothing: false
# encoder_flags_size: 8
# instructions: true
# optimize: false
# traffic: false
# maximum_distance: 100000
# maximum_distance_dynamic_weights: 100000
# maximum_distance_avoid_areas: 100000
# maximum_waypoints: 50
# maximum_snapping_radius: 400
# maximum_distance_alternative_routes: 100000
# maximum_distance_round_trip_routes: 100000
# maximum_speed_lower_bound: 80
# maximum_visited_nodes: 1000000
# location_index_resolution: 500
# location_index_search_iterations: 4
# force_turn_costs: false
# interpolate_bridges_and_tunnels: true
# preparation:
# min_network_size: 200
# methods:
# lm:
# enabled: true
# threads: 1
# weightings: recommended,shortest
# landmarks: 16
# execution:
# methods:
# lm:
# active_landmarks: 8
profiles:
# # All properties defined in ors.engine.profile_default can also be set in each profile to overwrite the defaults profile-specific.
car:
profile: driving-car
encoder_options:
turn_costs: true
block_fords: false
use_acceleration: true
preparation:
min_network_size: 200
methods:
ch:
enabled: true
threads: 1
weightings: fastest
lm:
enabled: false
threads: 1
weightings: fastest,shortest
landmarks: 16
core:
enabled: true
threads: 1
weightings: fastest,shortest
landmarks: 64
lmsets: highways;allow_all
execution:
methods:
lm:
active_landmarks: 6
core:
active_landmarks: 6
# ext_storages:
# WayCategory:
# HeavyVehicle:
# WaySurfaceType:
# RoadAccessRestrictions:
# use_for_warnings: true
enabled: true
# hgv:
# profile: driving-hgv
# encoder_options:
# turn_costs: true
# block_fords: false
# use_acceleration: true
# preparation:
# min_network_size: 200
# methods:
# ch:
# enabled: true
# threads: 1
# weightings: recommended
# core:
# enabled: true
# threads: 1
# weightings: recommended,shortest
# landmarks: 64
# lmsets: highways;allow_all
# execution:
# methods:
# core:
# active_landmarks: 6
# ext_storages:
# WayCategory:
# HeavyVehicle:
# restrictions: true
# WaySurfaceType:
# bike-regular:
# profile: cycling-regular
# encoder_options:
# consider_elevation: true
# turn_costs: true
# block_fords: false
# ext_storages:
# WayCategory:
# WaySurfaceType:
# HillIndex:
# TrailDifficulty:
# bike-mountain:
# profile: cycling-mountain
# encoder_options:
# consider_elevation: true
# turn_costs: true
# block_fords: false
# ext_storages:
# WayCategory:
# WaySurfaceType:
# HillIndex:
# TrailDifficulty:
# bike-road:
# profile: cycling-road
# encoder_options:
# consider_elevation: true
# turn_costs: true
# block_fords: false
# ext_storages:
# WayCategory:
# WaySurfaceType:
# HillIndex:
# TrailDifficulty:
# bike-electric:
# profile: cycling-electric
# encoder_options:
# consider_elevation: true
# turn_costs: true
# block_fords: false
# ext_storages:
# WayCategory:
# WaySurfaceType:
# HillIndex:
# TrailDifficulty:
walking:
profile: foot-walking
encoder_options:
block_fords: false
# ext_storages:
# WayCategory:
# WaySurfaceType:
# HillIndex:
# TrailDifficulty:
enabled: true
# hiking:
# profile: foot-hiking
# encoder_options:
# block_fords: false
# ext_storages:
# WayCategory:
# WaySurfaceType:
# HillIndex:
# TrailDifficulty:
# wheelchair:
# profile: wheelchair
# encoder_options:
# block_fords: true
# maximum_snapping_radius: 50
# ext_storages:
# WayCategory:
# WaySurfaceType:
# Wheelchair:
# KerbsOnCrossings: true
# OsmId:
# public-transport:
# profile: public-transport
# encoder_options:
# block_fords: false
# elevation: true
# maximum_visited_nodes: 1000000
# gtfs_file: ./src/test/files/vrn_gtfs_cut.zip
Just to let you know that there is no problem with the RAM. The ORS is up and running.
Thanks in advance.