Philip Martin wrote on Wed, Feb 16, 2011 at 23:13:27 +0000:
> Branko Čibej <brane_at_e-reka.si> writes:
>
> > In other words, use a proper crash-resistant transaction commit
> > sequence, with automatic rollback as necessary. See the sqlite docs for
> > a description of one way of doing this. :)
>
> Possibly. But that probably introduces an overhead that is entirely
> pointless in most cases. This problem can only occur with mod_dav_svn
> used through a proxy.
Why? Does the proxy violate mod_dav_svn's contract, or do "normal"
clients not behave in that way (even though the formal contract permist
it to them)?
> So I was thinking that a near-zero overhead
> solution is to have mod_dav_svn associate some sort of process ID with
> the transaction (in something like the the activity database) and have
> mod_dav_svn itself fail the commit if the process ID changes. The
> problem can only occur when the process ID changes and for the majority
> of commits that will not happen.
>
> --
> Philip
Received on 2011-02-17 01:21:38 CET