Opened 11 years ago
Last modified 5 years ago
#10808 closed defect
JOSM can break some "No U-Turn restriction" relations when they aren't fully downloaded — at Version 2
Reported by: | rickmastfan67 | Owned by: | team |
---|---|---|---|
Priority: | major | Milestone: | 20.12 |
Component: | Core | Version: | latest |
Keywords: | turn_restriction split way via | Cc: | simon04, JeroenHoek |
Description (last modified by )
Steps to reproduce:
- Download the following bounding box: https://www.openstreetmap.org/#map=18/40.66309/-80.09486
- Open up the 'Relations' panel on the right.
- Notice there is 1 'no_u_turn' relation that is partially downloaded. It has 3 members, with the 'via' being a way instead of a node.
- Now, select any node along way 57,375,488.
- Now, split the way using the selected node.
What happens:
The way is split, however, the 'no_u_turn' relations now have 4 members because JOSM didn't realize that only one of the newly split ways should have been added. Because of this, either relation now has 2 ways in the 'to' or 2 in the 'from' role foe each of the relations depending on which type of way was split.
What should happen:
JOSM should properly give the 'no_u_turn' relations the proper segment of highway after the split like it does for other turn restriction relations.
This doesn't happen if the entire area is downloaded so that the relations are 'complete'. But sometimes this isn't possible if there is a really long segment of highway and you just want to download a small area to split it up to add in a missing/new turn restriction at another intersection.
===
Now, if you were to try this with a relation that doesn't have a 'way' as the 'via', this problem doesn't happen. If you try downloading Way '79335584' and split it at node '926517941', you will notice that the attached 'straight_only' relation is updated properly even though it's 'incomplete'. Maybe that's because the 'via' node is downloaded.
===
Now, I don't know if this is possible to be fixed, but I have an idea that could fix it and it could be set aside for only when 'no_u_turn' restrictions are involved. If when a way is being split and it has a 'no_u_turn' restriction relation(s) attached, JOSM should be 'forced' to download that entire relation automatically when the split happens if it's 'incomplete'. This would become a 'fail-safe' for any relations that have the 'via' tag using a 'way'. This would allow the no_u_turn relation to be properly updated like the 'Way 79335584' example I gave above. It would prevent any mass breakage of already added 'no_u_turn' relations in the OSM database.
Or maybe have JOSM download the entire 'no_u_turn' restriction when you are downloading a section of data no matter what so you don't have to worry about it being incomplete and possibly breaking it?
What do you guys think?
Change History (2)
comment:1 by , 10 years ago
comment:2 by , 10 years ago
Description: | modified (diff) |
---|
Another suggestion on how to possibly fix this.
How about a prompt shows up when you're splitting a way that is part of a turn restriction asking you if you want to download the missing parts first? If you hit 'yes' JOSM would then automatically download the rest of the turn restriction relation to make sure it isn't broken when you upload your changes. I think this idea might work the best for turn restrictions as I don't like seeing them get broken easily by new users of JOSM.