[OSM-dev] API question: why was the diff upload call added to the API?

Tom Hughes tom at compton.nu
Wed Nov 24 08:47:02 GMT 2010

On 24/11/10 08:24, Joseph Koshy wrote:

> Could someone with knowledge of the history of the OSM API please
> help: what was the use case for the "diff upload" API (see {1})
> introduced in API version 0.6?  I.e., why were atomic changes deemed
> desirable?

Well the starting point was changesets rather than diff upload - we
wanted to group edits together so that it was easier for people to
browse edits for an area.

The diff uploads followed from that mostly I think because it was viewed
as a way to speed things up by reducing network latencies as compared to
the previous situation where a separate HTTP call was required for each
change to an object.

> The atomicity requirement for this API call makes it somewhat
> difficult to scale.

I suspect the main reason we made it behave atomicly was that (a) we
could and (b) it made things easier for both the client and the server
as they didn't have to worry about handling a partially applied diff.


Tom Hughes (tom at compton.nu)

More information about the dev mailing list