Re: Sequence of SVN commits cannot be replayed
sebb writes: > So what is the next stage in getting this inconsistency fixed ? > Do I have to create a Bugzilla entry or will someone else take care of that? I've done it: http://subversion.tigris.org/issues/show_bug.cgi?id=4482 -- Philip Martin | Subversion Committer WANdisco // *Non-Stop Data*
Re: Sequence of SVN commits cannot be replayed
On 23 March 2014 11:18, Philip Martin wrote: > Daniel Shahaf writes: > >> sebb wrote on Sat, Mar 22, 2014 at 01:28:33 +: >>> To reproduce the problem, start as follows: >>> >>> svn co http://dist.apache.org/repos/dist/release/commons/dbcp/@4582 >>> >>> Then apply the following revisions in order: >>> >>> 4583 >>> 4586 >>> 4588 >>> 4592 >>> 4593 >>> 4599 >> >> I can't reproduce an error with latest svn-1.8.8 from ports on FreeBSD 9.1. > > I believe the problem is an svn:special file that contains a '\n' > character: > > svn cat > https://dist.apache.org/repos/dist/release/commons/dbcp/binaries/HEADER.html@4588 > | od -c > 000 l i n k . . / H E A D E R . h > 020 t m l \r \n > 026 > > I can reproduce on Linux: > > svnadmin create repo > printf "link foo\n" > x.x > svnmucc -mm -U file://`pwd`/repo put x.x f propset svn:special '*' f > > Now > > svn co file://`pwd`/repo wc > svn st wc > M wc/f > > The reason is that create_special_file_from_stream() reads just the > first line of the file to define the symlink while > svn_wc__internal_file_modified_p() compares against the whole file. So what is the next stage in getting this inconsistency fixed ? Do I have to create a Bugzilla entry or will someone else take care of that? > -- > Philip Martin | Subversion Committer > WANdisco // *Non-Stop Data*
Re: Sequence of SVN commits cannot be replayed
On 24 March 2014 01:21, Daniel Shahaf wrote: > Daniel Shahaf wrote on Sun, Mar 23, 2014 at 02:34:35 +: >> sebb wrote on Sat, Mar 22, 2014 at 01:28:33 +: >> > To reproduce the problem, start as follows: >> > >> > svn co http://dist.apache.org/repos/dist/release/commons/dbcp/@4582 >> > >> > Then apply the following revisions in order: >> > >> > 4583 >> > 4586 >> > 4588 >> > 4592 >> > 4593 >> > 4599 >> >> I can't reproduce an error with latest svn-1.8.8 from ports on FreeBSD 9.1. > > I can reproduce Andreas' and Philip's results. I missed them on first > scan because the OP specifically reported a conflict, so I only looked > for conflicts. And I know 'svn up' reports conflicts, so I didn't run > 'svn st'... > > I don't want to sound like I'm shifting the blame (and I'll readily > admit that I was short on time when I did the checkout/update dance), > but that's exactly why including output transcripts in bug reports is a > good idea. Well, I got multiple conflict dialogs on both FreeBSD and WinXP when using "svn up -r " for some values of nnn I thought it would be the same for others. > Daniel
Re: Sequence of SVN commits cannot be replayed
Daniel Shahaf wrote on Sun, Mar 23, 2014 at 02:34:35 +: > sebb wrote on Sat, Mar 22, 2014 at 01:28:33 +: > > To reproduce the problem, start as follows: > > > > svn co http://dist.apache.org/repos/dist/release/commons/dbcp/@4582 > > > > Then apply the following revisions in order: > > > > 4583 > > 4586 > > 4588 > > 4592 > > 4593 > > 4599 > > I can't reproduce an error with latest svn-1.8.8 from ports on FreeBSD 9.1. I can reproduce Andreas' and Philip's results. I missed them on first scan because the OP specifically reported a conflict, so I only looked for conflicts. And I know 'svn up' reports conflicts, so I didn't run 'svn st'... I don't want to sound like I'm shifting the blame (and I'll readily admit that I was short on time when I did the checkout/update dance), but that's exactly why including output transcripts in bug reports is a good idea. Daniel
Re: Sequence of SVN commits cannot be replayed
Daniel Shahaf writes: > sebb wrote on Sat, Mar 22, 2014 at 01:28:33 +: >> To reproduce the problem, start as follows: >> >> svn co http://dist.apache.org/repos/dist/release/commons/dbcp/@4582 >> >> Then apply the following revisions in order: >> >> 4583 >> 4586 >> 4588 >> 4592 >> 4593 >> 4599 > > I can't reproduce an error with latest svn-1.8.8 from ports on FreeBSD 9.1. I believe the problem is an svn:special file that contains a '\n' character: svn cat https://dist.apache.org/repos/dist/release/commons/dbcp/binaries/HEADER.html@4588 | od -c 000 l i n k . . / H E A D E R . h 020 t m l \r \n 026 I can reproduce on Linux: svnadmin create repo printf "link foo\n" > x.x svnmucc -mm -U file://`pwd`/repo put x.x f propset svn:special '*' f Now svn co file://`pwd`/repo wc svn st wc M wc/f The reason is that create_special_file_from_stream() reads just the first line of the file to define the symlink while svn_wc__internal_file_modified_p() compares against the whole file. -- Philip Martin | Subversion Committer WANdisco // *Non-Stop Data*
Re: Sequence of SVN commits cannot be replayed
Hello, On 22/03/14 01:28, sebb wrote: > svn co http://dist.apache.org/repos/dist/release/commons/dbcp/@4582 > > Then apply the following revisions in order: > > 4583 This alone (with https) results in obstructed items on GNU/Linux: $ svn up -r4583 Updating '.': UU binaries/HEADER.html UU binaries/README.html UU source/HEADER.html UU source/README.html Updated to revision 4583. $ svn status ~ binaries/HEADER.html ~ binaries/README.html ~ source/HEADER.html ~ source/README.html svn, version 1.8.8 (r1568071) - openSUSE 13.1 (Bottle) (i586) (Bottle) [Linux 3.11.10-7-desktop] - APR 1.4.8 (compiled with 1.4.8) - APR-Util 1.5.2 (compiled with 1.5.2) - SQLite 3.8.4.1 (compiled with 3.7.17) Andreas
Re: Sequence of SVN commits cannot be replayed
sebb wrote on Sat, Mar 22, 2014 at 01:28:33 +: > To reproduce the problem, start as follows: > > svn co http://dist.apache.org/repos/dist/release/commons/dbcp/@4582 > > Then apply the following revisions in order: > > 4583 > 4586 > 4588 > 4592 > 4593 > 4599 I can't reproduce an error with latest svn-1.8.8 from ports on FreeBSD 9.1. Daniel P.S. "Replay" has a different meaning in svn, please don't overload that term. (You weren't supposed to know this, it's an API-level term.)
Re: Sequence of SVN commits cannot be replayed
On 22 March 2014 01:28, sebb wrote: > I think I have found a sequence of commits to SVN that cannot be > replayed in a workspace. > > I was trying to change a file into a link, and made some mistakes in > the process. > These mistakes caused svnpubsub to leave the workspace incorrectly updated. > > [Svnpubsub uses svn switch to change the workspace.] > > I have since found that the same sequence of events cannot be replayed > using svn update either, though the errors occur in a different way. > > To reproduce the problem, start as follows: > > svn co http://dist.apache.org/repos/dist/release/commons/dbcp/@4582 Sorry, that has to be https, i.e. svn co https://dist.apache.org/repos/dist/release/commons/dbcp/@4582 Note that the original commits were made from a Windows OS. I have been unable to replay the sequence on either Windows or Unix without generating workspace conflicts. > Then apply the following revisions in order: > > 4583 > 4586 > 4588 > 4592 > 4593 > 4599 > > This can be done with svn switch (as done by svnpubsub) or using svn update -r > > The resulting workspace should be the same as if one had invoked the > following: > > svn co http://dist.apache.org/repos/dist/release/commons/dbcp/@4599 > > But the process results in conflicts in the workspace. > I assume this is due to the use of svn:special and the link feature. > > I would expect to be able to replay any sequence of updates so long as > they are done in the correct order. But in this case some of the > intermediate steps cause conflicts in the workspace. > > This was tested (on minotaur) with > > svn, version 1.7.9 (r1462340) > > See also INFRA-7429
Sequence of SVN commits cannot be replayed
I think I have found a sequence of commits to SVN that cannot be replayed in a workspace. I was trying to change a file into a link, and made some mistakes in the process. These mistakes caused svnpubsub to leave the workspace incorrectly updated. [Svnpubsub uses svn switch to change the workspace.] I have since found that the same sequence of events cannot be replayed using svn update either, though the errors occur in a different way. To reproduce the problem, start as follows: svn co http://dist.apache.org/repos/dist/release/commons/dbcp/@4582 Then apply the following revisions in order: 4583 4586 4588 4592 4593 4599 This can be done with svn switch (as done by svnpubsub) or using svn update -r The resulting workspace should be the same as if one had invoked the following: svn co http://dist.apache.org/repos/dist/release/commons/dbcp/@4599 But the process results in conflicts in the workspace. I assume this is due to the use of svn:special and the link feature. I would expect to be able to replay any sequence of updates so long as they are done in the correct order. But in this case some of the intermediate steps cause conflicts in the workspace. This was tested (on minotaur) with svn, version 1.7.9 (r1462340) See also INFRA-7429