[OSM-dev] Minute Diffs Broken

Steve Singer ssinger_pg at sympatico.ca
Tue May 5 02:40:17 BST 2009


On Mon, 4 May 2009, Greg Troxel wrote:

>
> openstreetmap-dev at scd.debian.net writes:
>
>> Would this work?
>>
>> How about the situation:
>>
>> Changeset A creates a node
>>
>> Changeset B uses the node in a way
>>
>> Changeset B closes
>>
>> (Later) Changeset A closes
>
> Transactions are intended to avoid this.  It may be that the changeset B
> transaction shoudl be reading the node, in which case pgsql should
> prevent the commit of changeset B until A is closed.  Or more likely B
> could not see the node in changset A until A commits - this is the READ
> COMMITTED property, or the avoidance of "dirty reads".
>
> Have you seen this?

We don't use transactions that span the life of changesets (with good 
reason).  We might use transactions to service a single HTTP request to the 
API (ie single POST/PUT) but not for a changeset.   Changesets can last many 
hours (especially when the user goes back out mapping in middle of editing). 
Database Transactions lasting that long (controlled by end users) will cause 
lots of pain.

Steve





More information about the dev mailing list