#20781 closed enhancement (worksforme)
Prevent uploading of empty relations
Reported by: | Mashin | Owned by: | team |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Core validator | Version: | |
Keywords: | empty relation upload | Cc: |
Description
There are currently ~56,000 empty relations in OSM and most of them were uploaded from JOSM (https://lists.openstreetmap.org/pipermail/talk/2021-April/086499.html).
I know that empty relations are shown as errors in validator, but if validator is ignored then they can still be uploaded. I wonder if JOSM should refuse to upload changesets with empty relations or automatically "fix" the error before upload. If not as a general behavior it could be perhaps active only when "Expert Mode" is not enabled.
Attachments (3)
Change History (24)
by , 4 years ago
Attachment: | Screenshot 2021-04-20 at 22.10.41.png added |
---|
comment:1 by , 4 years ago
Component: | Core → Core validator |
---|---|
Resolution: | → worksforme |
Status: | new → closed |
comment:2 by , 4 years ago
So suggestion would be to remove the "Continue upload" button, or replace it with "Fix errors".
follow-up: 5 comment:3 by , 4 years ago
Keywords: | empty relation upload added |
---|
I guess the api should not accept relations without members. On the other hand we do not have much benefits from allowing an upload which is blocked by the api.
As I know that these relations are usually not downloaded and it is not that easy to find them I like the idea of denying an upload of relations without members.
comment:4 by , 4 years ago
Keywords: | empty relation upload removed |
---|
Hmm.. or in other words. If we know that those are errors, why do we allow them to be uploaded? Perhaps this should be applied for any errors.
comment:5 by , 4 years ago
That is another option, but who is going to change the API?
Replying to skyper:
I guess the api should not accept relations without members. On the other hand we do not have much benefits from allowing an upload which is blocked by the api.
As I know that these relations are usually not downloaded and it is not that easy to find them I like the idea of denying an upload of relations without members.
comment:6 by , 4 years ago
Keywords: | empty relation upload added |
---|
comment:7 by , 4 years ago
See also #19316. I think this was the main reason for the empty relations.
comment:8 by , 4 years ago
thanks for linking. I totally missed that ticket.
There were still some recent occurrences. Last one from 26th February e.g. https://www.openstreetmap.org/changeset/100028408
But let's wait maybe they'll be now less frequent. (if not we can revisit the issue)
comment:9 by , 4 years ago
In general an empty relation makes no sense!
Sometimes relations are created automatically on some actions (like joining areas) and the user is not aware of this, especially non expert users. If he deletes the resulting ways, an empty relation is left over.
If a new empty relation should be uploaded, this could be automatically removed. Maybe silently in non expert mode and with a warning dialog for experts. If an existing relation has no longer members, this maybe also show the warning for non experts. Perhaps an empty relation should block an upload, because it is not possible to fix it later, because such a relation can only be downloaded again when knowing the ID.
by , 3 years ago
Attachment: | rel vides 05-02-2022_tiquet 20781.txt added |
---|
list of empty relations from 24/04/2021 to 05/02/2022
comment:10 by , 3 years ago
Hi,
since the last comment (comment9) 10 months ago, and according to a new query today with the code indicated here #21825, 8059 empty relations have been added in OSM : 1 Merkaartor, 4 ArcGis, 14 Potlatch, 20 Vespucchi, 25 osmtools, 26 indefined (imports it seems) and... 7942 JOSM + 27 reverter pluging of JOSM.
When I read the comment8, don't you think you should do something now to prevent the next ones ?
Best regards.
follow-up: 12 comment:11 by , 3 years ago
Hi,
83 new empty relations were added in osm database since my last comment 10 days ago : 1 Potlatch (I have created an issue on github because that was created with the last version of this software), 82 JOSM (I have the file with the list if needed).
Some relations are new relations created empty : example 13805027
Some others are old relations and now empty : example 5492788
Any news about this issue ?
Best regards
comment:12 by , 3 years ago
Replying to anonymous:
83 new empty relations were added in osm database since my last comment 10 days ago : 1 Potlatch (I have created an issue on github because that was created with the last version of this software), 82 JOSM (I have the file with the list if needed).
Yes, please, attach the list, I am interested. Why do they ignore the error warning on upload?
Some relations are new relations created empty : example 13805027
A rather new mapper, registered half a year ago with ~100 CS, so far.
Some others are old relations and now empty : example 5492788
Interesting, a paid mapper broke the turn restriction and uploaded twice, ignoring warnings, only to have the next paid mapper deleting all members instead of deleting or fixing the relation. Again ignoring the error warning.
At least this example should have triggered the companies own evaluation.
Maybe the api should not accept the upload of empty relations.
follow-up: 14 comment:13 by , 3 years ago
Empty relations are not really a problem unless you search for them. I suggest to ask the mappers why they failed to delete the relations before uploading. Maybe that will help to improve JOSM.
Or maybe mappers simply deactivated the validation on upload?
comment:14 by , 3 years ago
Replying to GerdP:
Empty relations are not really a problem unless you search for them.
They are just garbage blowing up the database and yes, you have to search for them as you won't find them by chance, so people will most likely never notice their mistakes.
I suggest to ask the mappers why they failed to delete the relations before uploading. Maybe that will help to improve JOSM.
+1
Or maybe mappers simply deactivated the validation on upload?
I hope not but you'd never know unless you ask them.
by , 3 years ago
Attachment: | rel vides 15-02-2022_tiquet 20781.txt added |
---|
list of empty relations from 05/02/2022 to 15/02/2022
comment:16 by , 3 years ago
Here a real case of a bug of you I think, not from a user, the use of a plugin to revert a changeset with the result of the deletion of 6467 ways, 3494 nodes and 0 relation from 39 creating 39 empty relations : https://www.openstreetmap.org/changeset/106596700
Do you think you could fix that ?
Best regards
comment:18 by , 3 years ago
Because before the reverse there was no empty relation and after the reverse 39 : the plugin should prevent to create empty relations, not to create new ones.
If a changeset is bad (vandalism or a lot of mistakes), it is great to be able to reverse it completely. But if doing that, it put back empty relations, maybe the reverse should say 'no' or at least shows the problems it will put back so that the user understands that a complete reverse is maybe worse than to do nothing.
Like I said in the ticket visible in my comment:10, I'm not using JOSM so I don't know how it works and in particular this plugin, I just see the results in osm database and I will be pleased to know that you are working on it if needed.
Best regards
comment:19 by , 3 years ago
Sorry, had not much time. Important info missing so far are the answers to the question:
- Were/Are the validator errors displayed? Why not?
- Why are these errors ignored on upload
So you might want to ask the users these questions. CS comments might be useful but I doubt we get useful answer on CS older than a few weeks.
comment:20 by , 3 years ago
My two cents on this, I think doing user focus groups is not the most efficient time and effort spent. Particularly if a simple preventing user to upload data once errors are detected would do the trick.
Same as when error is encountered while running a code, the execution is halted. (Warnings are tolerated) So similarly, if error is detected in data, it has to be fixed before being sent to the live OSM database. Otherwise it can cause problems for downstream tools that expect OSM data to follow its own defined structure and standards. There is really no excuse why JOSM should allow upload bad data such as empty relations, self-intersecting polygons, inner rings outside outer ring polygons,...
iD handles that correctly and removes empty relations automatically without user intervention.
comment:21 by , 3 years ago
Imagine someone pushes a glass door and the glass breaks : according to JOSM, the problem is the user. And we, users of JOSM, we have to ask the people who pushed the door to understand why the glass broke. According to JOSM, the building of the door is not the problem and the builder has nothing to do, just to wait that some users give them more informations.
And not a word of the 60 000 broken doors in 10 years, the problem is, according to JOSM, 60 000 users, the builder has no responsability.
What a shame !