[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Modifying transaction properties (svnadmin setrevprop)

From: Daniel Shahaf <danielsh_at_apache.org>
Date: Sat, 23 Apr 2016 21:48:38 +0000

Ryan J Ollos wrote on Sat, Apr 23, 2016 at 14:23:37 -0700:
> For a long time I've known the rule "don't modify a transaction in a
> pre-commit hook", documented in (1) and recently repeated in (2).
>
> I was therefore surprised to read about the "svnadmin setrevprop" command
> (3) in 1.9, and to see an example of modifying transaction properties in
> the hook-scripts: "persist-ephemeral-txnprops.py" (4).
>
> Are there some conditions under which it's okay to modify the transaction,
> or are there only specific use-cases when this should be done?

Modifying transaction/revision properties is fine, since they are
mutable data that may change at any time after the commit: the
committing client's worldview will be as though somebody edited the
revprop immediately after its commit went through.

For everything else (text, property, and tree modifications), the client
assumes that what it submitted is what is stored in the repository in
the revision the commit created [that revision's number is reported to
the client], so if the hooks break that assumption, the committing
client may have a broken worldview.

Cheers,

Daniel
Received on 2016-04-23 23:48:41 CEST

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.