[OSM-dev] unmodified objects being uploaded?

Jon Burgess jburgess777 at googlemail.com
Sat Sep 29 11:54:05 BST 2007


On Sat, 2007-09-29 at 00:23 +0100, Richard Fairhurst wrote:
> Jon Burgess wrote:
> 
> > Looking at the history for some objects show that they have been
> > uploaded multiple times even tough there are no obvious changes:
> > [...]
> > There are other examples in the planet diff where only the  
> > timestamp has
> > been changed on an object. This could be a sign of a bug in one of the
> > editors.
> 
> Potlatch will upload a new way whenever a constituent part of that  
> way changes.
> 
> So, if you move the lat/long of a node within a way, then Potlatch  
> will write a new revision of the way to the database, as well as a  
> new revision of the node.
> 
> This isn't _quite_ as daft as it sounds. Potlatch only writes  
> "created_by" tags on ways: not nodes, not segments. In the above  
> example, you could tell that the edit was made by Potlatch because  
> the node change (no "created_by") has the same timestamp and user id  
> as a way change ("created_by=Potlatch").
> 
> (From a Potlatch, rather than OSM db, point of view, it makes a lot  
> of sense: Potlatch's principal objects are ways and POIs; you can't  
> edit a node in Potlatch unless it's part of one or the other.)
> 
> Is this a valid way of doing things? You could argue either way. It  
> means extra way revisions are written, but it saves significant space  
> by not adding created_by tags for the 350 nodes in a given way.
> 

I understand that by not adding the created_by tag we save some space. 

I still do not see what Potlatch would lose if it did not upload a new
version of a node which has absolutely zero differences. From what you
mention it seems the value of this is to say that the node was part of a
way which had some other modifcations made. Is there  anything else?

This seems to mean that if a user moves a single node in a way using
Potlatch then all nodes get changed to have his user id and results in
unnecessary work for for the backend DB to rewrite all these unmodified
nodes.

	Jon






More information about the dev mailing list