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

Re: Subversion 1.9: svn cp --pin-externals may produce dummy log entries

From: Stefan Sperling <stsp_at_elego.de>
Date: Thu, 23 Apr 2015 11:27:19 +0200

On Wed, Apr 22, 2015 at 07:58:35PM +0200, Marc Strapetz wrote:
> After invoking following series of commands:
>
> svnadmin create repo
> svn checkout file://localhost/d:/temp/externals/repo wc
>
> mkdir wc
> cd wc
> mkdir ext
> touch ext\file
>
> mkdir src\dir
> svn add *
> svn propset svn:externals "^/ext ext" src
> svn propset svn:externals "^/ext_at_1 ext" src\dir
> svn commit -m "initial import"
>
> svn up
> svn cp --pin-externals src ^^/dst -m "copy"
> svn log -r2 -v
> svn proplist -r2 -R -v ^^/
> svn proplist -r1 -R -v ^^/
>
> The final log output shows /dst/dir as modified:
>
> -------------------------
> r2 | marc | 2015-04-22...
> Changed paths:
> A /dst (from /src:1)
> M /dst/dir
>
> copy
> -------------------------
>
> However, there is no modification expected, because src\dir external already
> has a revision number set. The proplist outputs confirm that the property
> hasn't been modified:

Interesting. I suspect this comes about because the pin-externals code
always sends a propchange in the commit transaction. Apparently the
repository will happily record a no-op change. It seems the client
should avoid sending a propchange with an empty delta?

Or should the server be fixed to collapse empty propchanges to nothing?
What does it do for no-op file content changes sent by clients?

In any case, this is a cosmetic issue in practice. But I agree it should
be fixed.

> $ svn proplist -r2 -R -v ^/
> ...
> Properties on 'file://localhost/D:/temp/externals/repo/dst/dir':
> svn:externals
> ^/ext_at_1 ext
>
>
> $ svn proplist -r1 -R -v ^/
> ...
> Properties on 'file://localhost/D:/temp/externals/repo/src/dir':
> svn:externals
> ^/ext_at_1 ext

To rule out whitespace differences, can you please send these outputs
through hexdump or diff to ensure they really are identical?
I believe they are, just checking.
Received on 2015-04-23 11:27:50 CEST

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

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