-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Description
Island pruning does not seem to correctly relink transit entrances afterwards, which can create isolated stops after pruning. I encountered this issue when trying to plan a trip using the newly opened C1 cableway in Paris. The affected stop is the northern terminus of the line, Pointe du Lac.
Expected behavior
After pruning islands, street transit entrances should be properly relinked to the street graph, making the concerned stops usable again.
Observed behavior
The street transit entrance links stay in the graph and are connected to an isolated split vertex, rendering the stop(s) unusable.
Version of OTP used (exact commit hash or JAR name)
otp-shaded-2.8.1.jar
Data sets in use (links to GTFS and OSM PBF files)
GTFS file from https://prim.iledefrance-mobilites.fr/fr/jeux-de-donnees/offre-horaires-tc-gtfs-idfm (login required to download the GTFS file -- registration is free)
OSM PBF file from https://download.geofabrik.de/europe/france/ile-de-france-251214.osm.pbf (still downloadable as of today, but issue should persist using https://download.geofabrik.de/europe/france/ile-de-france-latest.osm.pbf. If not, I can upload the OSM PBF file to a file sharing service)
Command line used to start OTP
java -Xmx12G -jar otp-shaded-2.8.1.jar --build --serve graphs/idf
Router config and graph build config JSON
build-config.json:
{
"buildReportDir": "report/",
"islandPruning": {
"islandWithoutStopsMaxSize": 100,
"islandWithStopsMaxSize": 100
},
"dataImportReport": true
}router-config.json: not used
Steps to reproduce the problem
- Create a folder graphs/idf with the IDFM GTFS file and Île-de-France OSM PBF file, as well as the above build-config.json
- Run
java -Xmx12G -jar otp-shaded-2.8.1.jar --build --serve graphs/idf - Open the debug client and try routing from 48.75295 2.471406 to 48.76893 2.464959
- Observe that OTP does not use the newly opened C1 cableway
- Zoom into the arrival point, display all the edges and vertices
- Observe that the stop Pointe du Lac has a transit entrance linked to an isolated split vertex
For reference, the graph looks like this when islandWithoutStopsMaxSize and islandWithStopsMaxSize are set to 0:
I worked around the issue using the fixes in https://github.com/vdng9338/OpenTripPlanner/tree/vdng9338/pruneIslandEntranceLink (look at the last two commits), but I am not sure that this is the proper way to deal with the issue.