[josm-dev] Deletion conflicts
Shaun McDonald
osm at shaunmcdonald.me.uk
Mon Apr 27 21:52:29 BST 2009
On 27 Apr 2009, at 20:44, Frederik Ramm wrote:
> Hi,
>
> (CC'ing Chris Browet because I'd like to know if Merkaartor has come
> up
> with a solution for this problem that we could use!)
>
> Shaun pointed out the following problem with conflict resolution
> (which is not new, it was present in pre-0.6 times too):
>
>> Nick downloads an area.
>> Steve downloads the same area.
>> Nick deletes node 23 and uploads.
>> Steve changes a tag on node 23.
>> Steve does an update, and does not get an update about the fact that
>> Nick deleted node 23.
>> When Steve uploads all he gets is a Gone HTTP status.
>
> I see several issues here:
>
> Firstly, Steve should not get "Gone" in the last step; he should get
> whatever the usual version mismatch error code is - after all he tries
> to upload his change based on an old version of node 23. This is
> potentially an API bug.
It could be that the file that I have has some other problem which is
causing the gone. I do have an improvement to the error message, when
a node/way/relation has been deleted, which hasn't been deployed yet.
Hopefully that will help to debug what is going on.
http://trac.openstreetmap.org/changeset/14783
>
> But, more importantly, how could we achieve that Steve's session gets
> wind of the fact that Nick has deleted the node?
>
> Idea 1: Implement a kind of "list all objects deleted from this area
> within the last X minutes" API call which JOSM could use. This would
> slow down the download and increase API load but probably be a stable
> way to deal with it.
>
> Idea 2: Before re-downloading an area, let JOSM mark all objects that
> came from the API on the last download as "possibly deleted". On
> merging
> the newly downloaded dataset with the existing data, reset that flag
> for
> every object retrieved from the API. The remaining objects flagged
> "possibly deleted" have been deleted on the server and should either
> be
> silently removed, or if they have local modifications, a conflict
> dialog
> needs to be shown.
>
It could be that someone has moved the node outside the area, so the
best option would be to do a read on that node/way/relation as
suggested by Avar (no don't screenscrape, use the HTTP status code and
any xml returned).
Shaun
> Further ideas, comments?
>
> Bye
> Frederik
>
> --
> Frederik Ramm ## eMail frederik at remote.org ## N49°00'09"
> E008°23'33"
>
> _______________________________________________
> josm-dev mailing list
> josm-dev at openstreetmap.org
> http://lists.openstreetmap.org/listinfo/josm-dev
More information about the josm-dev
mailing list