git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: Anomaly with the new code - Re: git-svn performance
@ 2014-10-27 23:26 Hin-Tak Leung
  2014-10-28  5:40 ` differences between old clone and new " Hin-Tak Leung
  2014-10-28  7:45 ` Anomaly with the new code - " Eric Wong
  0 siblings, 2 replies; 14+ messages in thread
From: Hin-Tak Leung @ 2014-10-27 23:26 UTC (permalink / raw)
  To: normalperson
  Cc: stoklund, fabian.schmied, git, sam, stevenrwalter, waste.manager,
	amyrick

------------------------------
On Mon, Oct 27, 2014 16:56 GMT Eric Wong wrote:

>Eric Wong <normalperson@yhbt.net> wrote:
>> Which SVN version are you using?  I'm cloning (currently on r373xx)
>> https://svn.r-project.org/R using --stdlayout and
>> unable to see memory growth of the git-svn Perl process beyond 40M
>> (on a 32-bit system).
>
>git-svn hit 45M and took 11:44 to finish.   My ping times to
>svn.r-project.org is around 150ms (I'm running this from a server in
>Fremont, California).  I'll keep the repo around and periodically fetch
>to see how it runs.

I'll apply the 10 patches against 2.1.0 and see then. As I wrote
in my last reply, my 3rd clone took about 8 hours to finish,
and the max resident size is about 700MB (according to GNU "time").

AFAIK the hosting server is in northern Europe (Copahagen?), I think,
so it is supposed to be faster for me fetching from UK.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* differences between old clone and new  Re: git-svn performance
  2014-10-27 23:26 Anomaly with the new code - Re: git-svn performance Hin-Tak Leung
@ 2014-10-28  5:40 ` Hin-Tak Leung
  2014-10-28  7:41   ` Eric Wong
  2014-10-28 23:33   ` Regression and failure to clone/fetch with new code " Hin-Tak Leung
  2014-10-28  7:45 ` Anomaly with the new code - " Eric Wong
  1 sibling, 2 replies; 14+ messages in thread
From: Hin-Tak Leung @ 2014-10-28  5:40 UTC (permalink / raw)
  To: normalperson
  Cc: stoklund, fabian.schmied, git, sam, stevenrwalter, waste.manager,
	amyrick

To compare the old clone with the new, I did:

git branch -r | sort | xargs -n 1 git log --decorate=full -n 1

It turned out other than the empty vs 3 word commit messages
about two years ago on trunk (which are inherited in all the newer
branches), there are two other groups of differences.

One branch on the old clone has an extra merge from trunk (
and some extra trunk commits) listed in 'git log', while
another branch has the exact opposite - on the old clone
has one fewer merge.

I see the merge seem to be genuine - the subversion log
often says so e.g. "ported from rXXX from trunk", but
the extra/missing pattern isn't consistent.

So the histories are largely the same, except due to the 
extra merge, don't have the same sha1 sums.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: differences between old clone and new  Re: git-svn performance
  2014-10-28  5:40 ` differences between old clone and new " Hin-Tak Leung
@ 2014-10-28  7:41   ` Eric Wong
  2014-10-28 23:59     ` Hin-Tak Leung
  2014-10-28 23:33   ` Regression and failure to clone/fetch with new code " Hin-Tak Leung
  1 sibling, 1 reply; 14+ messages in thread
From: Eric Wong @ 2014-10-28  7:41 UTC (permalink / raw)
  To: Hin-Tak Leung
  Cc: stoklund, fabian.schmied, git, sam, stevenrwalter, waste.manager,
	amyrick

Hin-Tak Leung <htl10@users.sourceforge.net> wrote:
> To compare the old clone with the new, I did:
> 
> git branch -r | sort | xargs -n 1 git log --decorate=full -n 1
> 
> It turned out other than the empty vs 3 word commit messages
> about two years ago on trunk (which are inherited in all the newer
> branches), there are two other groups of differences.
> 
> One branch on the old clone has an extra merge from trunk (
> and some extra trunk commits) listed in 'git log', while
> another branch has the exact opposite - on the old clone
> has one fewer merge.
> 
> I see the merge seem to be genuine - the subversion log
> often says so e.g. "ported from rXXX from trunk", but
> the extra/missing pattern isn't consistent.

So both merges are correct, but we lose one, and gain one?
I'll try to check more closely tomorrow.  Can you point out
the exact revisions in the R repo?  Thanks.

> So the histories are largely the same, except due to the 
> extra merge, don't have the same sha1 sums.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Anomaly with the new code - Re: git-svn performance
  2014-10-27 23:26 Anomaly with the new code - Re: git-svn performance Hin-Tak Leung
  2014-10-28  5:40 ` differences between old clone and new " Hin-Tak Leung
@ 2014-10-28  7:45 ` Eric Wong
  1 sibling, 0 replies; 14+ messages in thread
From: Eric Wong @ 2014-10-28  7:45 UTC (permalink / raw)
  To: Hin-Tak Leung
  Cc: stoklund, fabian.schmied, git, sam, stevenrwalter, waste.manager,
	amyrick

Hin-Tak Leung <htl10@users.sourceforge.net> wrote:
> >Eric Wong <normalperson@yhbt.net> wrote:
> >> Which SVN version are you using?  I'm cloning (currently on r373xx)
> >> https://svn.r-project.org/R using --stdlayout and
> >> unable to see memory growth of the git-svn Perl process beyond 40M
> >> (on a 32-bit system).
> >
> >git-svn hit 45M and took 11:44 to finish.   My ping times to
> >svn.r-project.org is around 150ms (I'm running this from a server in
> >Fremont, California).  I'll keep the repo around and periodically fetch
> >to see how it runs.
> 
> I'll apply the 10 patches against 2.1.0 and see then. As I wrote
> in my last reply, my 3rd clone took about 8 hours to finish,
> and the max resident size is about 700MB (according to GNU "time").

The "time" command is not a good measurement since it includes child
process memory use (which may be file-backed mmap for git repack or
"git cat-file --batch").  My measurements are just the RSS of the
git-svn Perl process (from "ps aux" or VmRSS in /proc/$PID/status
on Linux)

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Regression and failure to clone/fetch with new code Re: git-svn performance
  2014-10-28  5:40 ` differences between old clone and new " Hin-Tak Leung
  2014-10-28  7:41   ` Eric Wong
@ 2014-10-28 23:33   ` Hin-Tak Leung
  2014-10-29 19:23     ` Eric Wong
  1 sibling, 1 reply; 14+ messages in thread
From: Hin-Tak Leung @ 2014-10-28 23:33 UTC (permalink / raw)
  To: normalperson
  Cc: stoklund, fabian.schmied, git, sam, stevenrwalter, waste.manager,
	amyrick

Hi, I patched my system git with the recent git-svn improvements, and just use
it for general use; so theses are the patches, against 2.1.0.

0001-git-svn-only-look-at-the-new-parts-of-svn-mergeinfo.patch
0002-git-svn-only-look-at-the-root-path-for-svn-mergeinfo.patch
0003-git-svn-reduce-check_cherry_pick-cache-overhead.patch
0004-git-svn-cache-only-mergeinfo-revisions.patch
0005-git-svn-remove-mergeinfo-rev-caching.patch
0006-git-svn.txt-advertise-pushurl-with-dcommit.patch
0007-git-svn-reload-RA-every-log-window-size.patch
0008-git-svn-remove-unnecessary-DESTROY-override.patch
0009-git-svn-save-a-little-memory-as-fetch-progresses.patch
0010-git-svn-disable-_rev_list-memoization.patch

trying to do this:
git svn clone http://www.virtualbox.org/svn/vbox/trunk vbox

(there is no publicly visible branches, so it is just a straight-forward single-branch clone).

aborts with 

---------------
	M	src/VBox/Main/HostImpl.cpp
Incorrect parameters given: Could not convert '%ld' into a number at /usr/share/perl5/vendor_perl/Git/SVN.pm line 1711.

$ git svn fetch --all
Index mismatch: d6c75bc195b1daad647322e2cc025bd31265c6b9 != 3927d05f6ab037fcf2b4d964c9633efade037d1b
rereading a65b5fc0077c2fa80a344833b65ac19ff4ae88b6
	M	src/VBox/Main/HostImpl.cpp
Incorrect parameters given: Could not convert '%ld' into a number at /usr/share/perl5/vendor_perl/Git/SVN.pm line 1711.
----------------

I have never seen such behavior before, and seeing as the lines indicated are in
a routine called "mergeinfo_changes", and recently added/changed by
quite a few of the patches, I started reverting from the back in this order: #5, #4, #2, #1 
and tried again between each revert. And it finally allows me to fetch again after
reverting #1.

I don't see any %ld close by, but presumably this is enough information for somebody else
to try. The platform is linux x86_64. (mostly fedora 20 but with a lot of additional
changes like a newer gnome than shipped, etc so probably not really fc20) 

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: differences between old clone and new  Re: git-svn performance
  2014-10-28  7:41   ` Eric Wong
@ 2014-10-28 23:59     ` Hin-Tak Leung
  2014-10-30  0:21       ` Eric Wong
  0 siblings, 1 reply; 14+ messages in thread
From: Hin-Tak Leung @ 2014-10-28 23:59 UTC (permalink / raw)
  To: Eric Wong
  Cc: stoklund, fabian.schmied, git, sam, stevenrwalter, waste.manager,
	amyrick

On Tue, 28/10/14, Eric Wong <normalperson@yhbt.net> wrote:

> So both merges
 are correct, but we lose one, and gain one?
 I'll try to check more closely tomorrow. 
 Can you point out
 the exact revisions in the
 R repo?  Thanks.


The missing merge on branch "R-2-14-branch" is:

commit 93af4d4cc3a5e0039944dd4e340d26995be8a252
Merge: 121990f 6ff1b87
Author: ripley <ripley@00db46b3-68df-0310-9c12-caf00c1e9a41>
Date:   Wed Feb 22 13:45:34 2012 +0000

    port r58453 from trunk

    git-svn-id: https://svn.r-project.org/R/branches/R-2-14-branch@58454 00db46b3-68df-0310-9c12-caf00c1e9a41



121990f is R-2-14-branch@58449, 6ff1b87 is trunk@58453, but the two branches
are only identical  up to and including R-2-14-branch@57129  - 
i.e. trunk@57130 appears in my old clone's  "R-2-14-branch" git log but not in the new clone's.

The extra merge in the new clone is in branch "djm-parseRd":

commit 6d93330f7637eb4da81adaea58454c6b43da1c65
Merge: f503a9d 23deade
Author: murdoch <murdoch@00db46b3-68df-0310-9c12-caf00c1e9a41>
Date:   Thu Nov 13 14:24:17 2008 +0000

    Update from trunk to r46923
    
    git-svn-id: https://svn.r-project.org/R/branches/djm-parseRd@46925 00db46b3-68df-0310-9c12-caf00c1e9a41

You can look up f503a9d (djm-parseRd@46922) and 23deade (trunk@46923) yourself.
The two branches' git log agree up to and including djm-parseRd@46659 .

Hmm, the new "djm-parseRd" branch actually have *two* extra merges,
the earlier extra is:

commit 1e8174c797ba8471d604e89e4d614ad969b93b72
Merge: 55a1d9b 72744ab
Author: murdoch <murdoch@00db46b3-68df-0310-9c12-caf00c1e9a41>
Date:   Tue Nov 11 21:17:06 2008 +0000

    Merge trunk changes to r46902
    
    git-svn-id: https://svn.r-project.org/R/branches/djm-parseRd@46906 00db46b3-68df-0310-9c12-caf00c1e9a41

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Regression and failure to clone/fetch with new code Re: git-svn performance
  2014-10-28 23:33   ` Regression and failure to clone/fetch with new code " Hin-Tak Leung
@ 2014-10-29 19:23     ` Eric Wong
  2014-10-30  0:06       ` Hin-Tak Leung
  0 siblings, 1 reply; 14+ messages in thread
From: Eric Wong @ 2014-10-29 19:23 UTC (permalink / raw)
  To: Hin-Tak Leung
  Cc: stoklund, fabian.schmied, git, sam, stevenrwalter, waste.manager,
	amyrick

Hin-Tak Leung <htl10@users.sourceforge.net> wrote:
> Hi, I patched my system git with the recent git-svn improvements, and just use
> it for general use; so theses are the patches, against 2.1.0.
> 
> 0001-git-svn-only-look-at-the-new-parts-of-svn-mergeinfo.patch
> 0002-git-svn-only-look-at-the-root-path-for-svn-mergeinfo.patch
> 0003-git-svn-reduce-check_cherry_pick-cache-overhead.patch
> 0004-git-svn-cache-only-mergeinfo-revisions.patch
> 0005-git-svn-remove-mergeinfo-rev-caching.patch
> 0006-git-svn.txt-advertise-pushurl-with-dcommit.patch
> 0007-git-svn-reload-RA-every-log-window-size.patch
> 0008-git-svn-remove-unnecessary-DESTROY-override.patch
> 0009-git-svn-save-a-little-memory-as-fetch-progresses.patch
> 0010-git-svn-disable-_rev_list-memoization.patch
> 
> trying to do this:
> git svn clone http://www.virtualbox.org/svn/vbox/trunk vbox
> 
> (there is no publicly visible branches, so it is just a straight-forward single-branch clone).
> 
> aborts with 
> 
> ---------------
> 	M	src/VBox/Main/HostImpl.cpp
> Incorrect parameters given: Could not convert '%ld' into a number at /usr/share/perl5/vendor_perl/Git/SVN.pm line 1711.
> 
> $ git svn fetch --all
> Index mismatch: d6c75bc195b1daad647322e2cc025bd31265c6b9 != 3927d05f6ab037fcf2b4d964c9633efade037d1b
> rereading a65b5fc0077c2fa80a344833b65ac19ff4ae88b6
> 	M	src/VBox/Main/HostImpl.cpp
> Incorrect parameters given: Could not convert '%ld' into a number at /usr/share/perl5/vendor_perl/Git/SVN.pm line 1711.
> ----------------
> 
> I have never seen such behavior before, and seeing as the lines indicated are in
> a routine called "mergeinfo_changes", and recently added/changed by
> quite a few of the patches, I started reverting from the back in this order: #5, #4, #2, #1 
> and tried again between each revert. And it finally allows me to fetch again after
> reverting #1.

Me neither, this is new bug to me.  I cannot reproduce it, either.  Which
revision did you hit this on?  I completed your vbox trunk clone without
any problems on my side (Debian i386, SVN 1.6.17).

Can you try the following to dump out the parameters passed to
mergeinfo_changes?

--- a/perl/Git/SVN.pm
+++ b/perl/Git/SVN.pm
@@ -1695,8 +1695,10 @@ sub parents_exclude {
 }
 
 # Compute what's new in svn:mergeinfo.
+use Data::Dumper;
 sub mergeinfo_changes {
 	my ($self, $old_path, $old_rev, $path, $rev, $mergeinfo_prop) = @_;
+	print STDERR Dumper(\@_);
 	my %minfo = map {split ":", $_ } split "\n", $mergeinfo_prop;
 	my $old_minfo = {};
 

Btw, I missed part of your other email, but no, I never maintained any
Chinese packages in Debian.

> I don't see any %ld close by, but presumably this is enough information for somebody else
> to try. The platform is linux x86_64. (mostly fedora 20 but with a lot of additional
> changes like a newer gnome than shipped, etc so probably not really fc20) 
> 

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Regression and failure to clone/fetch with new code Re: git-svn performance
  2014-10-29 19:23     ` Eric Wong
@ 2014-10-30  0:06       ` Hin-Tak Leung
  2014-10-30  0:28         ` Eric Wong
  0 siblings, 1 reply; 14+ messages in thread
From: Hin-Tak Leung @ 2014-10-30  0:06 UTC (permalink / raw)
  To: Eric Wong
  Cc: stoklund, fabian.schmied, git, sam, stevenrwalter, waste.manager,
	amyrick

Argh, sorry. I thought I included the info but I didn't.

git 2.1.0 + 10 patches aborts after trunk@28923 (i.e. failing to fetch 28924);
if I revert the patches in that order (#5,#4,#2, #1) and retry in the middle,
I have to revert all 4 to get 'git svn fetch' to continue on to 28924.

I tried --stdlayout (it seems that there were branches, but just merged and "deleted"
according to the web code browsing interface) but it failed at the same revision.

I'll try the data dump and see what it gives me...

What do you think were missing in my e-mails? The differences of new clone against old
is a missing merge in at R-2-14-branch@58454 , and two extra merges at
djm-parseRd@46925  and djm-parseRd@46906 .

--------------------------------------------
On Wed, 29/10/14, Eric Wong <normalperson@yhbt.net> wrote:

 Subject: Re: Regression and failure to clone/fetch with new code Re: git-svn performance
 To: "Hin-Tak Leung" <htl10@users.sourceforge.net>
 Cc: stoklund@2pi.dk, fabian.schmied@gmail.com, git@vger.kernel.org, sam@vilain.net, stevenrwalter@gmail.com, waste.manager@gmx.de, amyrick@apple.com
 Date: Wednesday, 29 October, 2014, 20:23
 
 Hin-Tak Leung <htl10@users.sourceforge.net>
 wrote:
 > Hi, I patched my system git with
 the recent git-svn improvements, and just use
 > it for general use; so theses are the
 patches, against 2.1.0.
 > 
 >
 0001-git-svn-only-look-at-the-new-parts-of-svn-mergeinfo.patch
 >
 0002-git-svn-only-look-at-the-root-path-for-svn-mergeinfo.patch
 >
 0003-git-svn-reduce-check_cherry_pick-cache-overhead.patch
 >
 0004-git-svn-cache-only-mergeinfo-revisions.patch
 >
 0005-git-svn-remove-mergeinfo-rev-caching.patch
 >
 0006-git-svn.txt-advertise-pushurl-with-dcommit.patch
 >
 0007-git-svn-reload-RA-every-log-window-size.patch
 >
 0008-git-svn-remove-unnecessary-DESTROY-override.patch
 >
 0009-git-svn-save-a-little-memory-as-fetch-progresses.patch
 >
 0010-git-svn-disable-_rev_list-memoization.patch
 > 
 > trying to do
 this:
 > git svn clone http://www.virtualbox.org/svn/vbox/trunk
 vbox
 > 
 > (there
 is no publicly visible branches, so it is just a
 straight-forward single-branch clone).
 >
 
 > aborts with 
 > 
 > ---------------
 >
     M    src/VBox/Main/HostImpl.cpp
 > Incorrect parameters given: Could not
 convert '%ld' into a number at
 /usr/share/perl5/vendor_perl/Git/SVN.pm line 1711.
 > 
 > $ git svn fetch
 --all
 > Index mismatch:
 d6c75bc195b1daad647322e2cc025bd31265c6b9 !=
 3927d05f6ab037fcf2b4d964c9633efade037d1b
 > rereading
 a65b5fc0077c2fa80a344833b65ac19ff4ae88b6
 >     M   
 src/VBox/Main/HostImpl.cpp
 > Incorrect
 parameters given: Could not convert '%ld' into a
 number at /usr/share/perl5/vendor_perl/Git/SVN.pm line
 1711.
 > ----------------
 > 
 > I have never seen
 such behavior before, and seeing as the lines indicated are
 in
 > a routine called
 "mergeinfo_changes", and recently added/changed
 by
 > quite a few of the patches, I
 started reverting from the back in this order: #5, #4, #2,
 #1 
 > and tried again between each
 revert. And it finally allows me to fetch again after
 > reverting #1.
 
 Me neither, this is new bug to me.  I cannot
 reproduce it, either.  Which
 revision did
 you hit this on?  I completed your vbox trunk clone
 without
 any problems on my side (Debian
 i386, SVN 1.6.17).
 
 Can you
 try the following to dump out the parameters passed to
 mergeinfo_changes?
 
 --- a/perl/Git/SVN.pm
 +++
 b/perl/Git/SVN.pm
 @@ -1695,8 +1695,10 @@ sub
 parents_exclude {
  }
  
  # Compute what's new in svn:mergeinfo.
 +use Data::Dumper;
  sub
 mergeinfo_changes {
      my ($self,
 $old_path, $old_rev, $path, $rev, $mergeinfo_prop) = @_;
 +    print STDERR Dumper(\@_);
      my %minfo = map {split ":",
 $_ } split "\n", $mergeinfo_prop;
 
     my $old_minfo = {};
  
 
 Btw, I missed part of your
 other email, but no, I never maintained any
 Chinese packages in Debian.
 
 > I don't see any %ld close by, but
 presumably this is enough information for somebody else
 > to try. The platform is linux x86_64.
 (mostly fedora 20 but with a lot of additional
 > changes like a newer gnome than shipped,
 etc so probably not really fc20) 
 > 
 

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: differences between old clone and new  Re: git-svn performance
  2014-10-28 23:59     ` Hin-Tak Leung
@ 2014-10-30  0:21       ` Eric Wong
  2014-10-30  0:55         ` Hin-Tak Leung
  0 siblings, 1 reply; 14+ messages in thread
From: Eric Wong @ 2014-10-30  0:21 UTC (permalink / raw)
  To: Hin-Tak Leung
  Cc: stoklund, fabian.schmied, git, sam, stevenrwalter, waste.manager,
	amyrick

Hin-Tak Leung <htl10@users.sourceforge.net> wrote:
> On Tue, 28/10/14, Eric Wong <normalperson@yhbt.net> wrote:
> 
> > So both merges
>  are correct, but we lose one, and gain one?
>  I'll try to check more closely tomorrow. 
>  Can you point out
>  the exact revisions in the
>  R repo?  Thanks.
> 
> 
> The missing merge on branch "R-2-14-branch" is:
> 
> commit 93af4d4cc3a5e0039944dd4e340d26995be8a252
> Merge: 121990f 6ff1b87
> Author: ripley <ripley@00db46b3-68df-0310-9c12-caf00c1e9a41>
> Date:   Wed Feb 22 13:45:34 2012 +0000
> 
>     port r58453 from trunk
> 
>     git-svn-id: https://svn.r-project.org/R/branches/R-2-14-branch@58454 00db46b3-68df-0310-9c12-caf00c1e9a41

I'm curious if you can tell me which version of git-svn you used to get
that as a merge commit.  git-svn mergeinfo handling has changed
(hopefully improved) over the years, so some differences in history
can be (unfortunately) expected, I think.

I cannot reproduce your original merge on Junio's current master.  Using
Junio's master[1] without any recent git-svn changes, a partial clone
doing:

   git svn clone -s -r52000:58600 svn+ssh://127.0.0.1/path/to/my/R-mirror

...causes the merges in r58454 to be ignored as cherry-picks, too.
I suspect it's correct for git-svn to ignore those as cherry-picks
nowadays.

Here's a snippet of what I see from the above command:
----------------------------------8<-----------------------------------
r58452 = ebf3a1ca312ca7cc03dc2387d86491a0cdc95bad (refs/remotes/origin/trunk)
	M	src/library/base/man/Primitive.Rd
	M	src/main/names.c
	M	doc/NEWS.Rd
r58453 = 05b55eee9e6bed628873d34261e54c70f87a3736 (refs/remotes/origin/trunk)
	M	doc/NEWS.Rd
	M	src/library/base/man/Primitive.Rd
	M	src/main/names.c
W:svn cherry-pick ignored (/branches/R-2-12-branch:52939,54476,55265) - missing 492 commit(s) (eg df9d875de507ac51932c0ed980392e8262f98b31)
W:svn cherry-pick ignored (/branches/R-2-13-branch:55265,55432) - missing 231 commit(s) (eg cad052d416d9b8a9dfbfb2ae7bf85c39306c67bb)
W:svn cherry-pick ignored (/trunk:57183,57204-57205,57242,57259,57314,57316,57321,57370,57411,57428,57430,57432,57438,57440,57484,57489-57490,57579,57589,57604,57614-57618,57625,57679,57681,57687,57738,57741,57744-57745,57747,57752,57758,57761,57763,57765,57767,57769,57771,57790,57793,57803,57812,57814,57816,57826-57827,57836,57840-57841,57844,57846,57851,57853,57856,57861-57862,57867,57880,57884,57890,57893,57895,57900,57904,57908,57913,57920,57936,57939-57941,57950,57952,57959,57964,57970,57975,57977,57981,57987,58006,58008,58037,58039,58042,58047,58052,58056,58058,58066-58067,58082,58084,58089,58094,58098,58100,58107,58126,58129,58135,58142,58161,58178,58182,58187,58195,58204,58213,58217,58221,58225,58228,58232,58234,58239,58248,58253,58265,58269,58272,58274,58276,58278,58282,58284,58288,58294,58296,58305,58312,58314,58318,58324,58326,58328,58332,58334,58340,58346,58348,58353,58355,58357,58359,58361,58373,58378,58381,58386,58388,58392,58395,58397,58405,58412,58415,58429,58435,58437,58439,58453) - missing 716 commit(s) (eg e9ccca5db27696ed8faa4427ec4110ddf230d141)
r58454 = 96d6087a494bb7da6d90f02e8bd36833eaad2067 (refs/remotes/origin/R-2-14-branch)
	M	doc/manual/R-exts.texi
	M	doc/NEWS.Rd
	M	src/library/tools/R/check.R
r58455 = 742cbc791fa6760d5dfb4c4ea1e032d32e9e87c9 (refs/remotes/origin/trunk)
----------------------------------8<-----------------------------------

[1] - fbecd99 Update draft release notes to 2.2

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Regression and failure to clone/fetch with new code Re: git-svn performance
  2014-10-30  0:06       ` Hin-Tak Leung
@ 2014-10-30  0:28         ` Eric Wong
  2014-10-30  2:35           ` Hin-Tak Leung
  0 siblings, 1 reply; 14+ messages in thread
From: Eric Wong @ 2014-10-30  0:28 UTC (permalink / raw)
  To: Hin-Tak Leung
  Cc: stoklund, fabian.schmied, git, sam, stevenrwalter, waste.manager,
	amyrick

Hin-Tak Leung <htl10@users.sourceforge.net> wrote:
> Argh, sorry. I thought I included the info but I didn't.

Thanks. I'll try a different version of svn later.

> What do you think were missing in my e-mails?

I was skimming and missed the part about Debian packages :)

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: differences between old clone and new  Re: git-svn performance
  2014-10-30  0:21       ` Eric Wong
@ 2014-10-30  0:55         ` Hin-Tak Leung
  2014-10-30 23:08           ` Eric Wong
  0 siblings, 1 reply; 14+ messages in thread
From: Hin-Tak Leung @ 2014-10-30  0:55 UTC (permalink / raw)
  To: Eric Wong
  Cc: stoklund, fabian.schmied, git, sam, stevenrwalter, waste.manager,
	amyrick

--------------------------------------------
On Thu, 30/10/14, Eric Wong <normalperson@yhbt.net> wrote:

 > The missing merge on branch
 "R-2-14-branch" is:
 > 
 > commit
 93af4d4cc3a5e0039944dd4e340d26995be8a252
 > Merge: 121990f 6ff1b87
 > Author: ripley <ripley@00db46b3-68df-0310-9c12-caf00c1e9a41>
 > Date:   Wed Feb 22 13:45:34
 2012 +0000
 > 
 > 
    port r58453 from trunk
 >
 
 >     git-svn-id: https://svn.r-project.org/R/branches/R-2-14-branch@58454
 00db46b3-68df-0310-9c12-caf00c1e9a41
 
> I'm curious if you can tell me which
 version of git-svn you used to get
 that as a
 merge commit.  git-svn mergeinfo handling has changed
 (hopefully improved) over the years, so some
 differences in history
 can be
 (unfortunately) expected, I think.

That's quite straight-forward, I think  - except for the recent burst (I am essentially
adapting the git 2.1.0 release shipped by the upcoming fedora 21 scheduled for christmas)
I tend to update to the latest fedora release about a week or two after release;
fedora 17 was shipped in May 2012 and only just enter Alpha in 22 Feb 2012.
and I tracked R at least as frequently as weekly around then;
So I would be using what ever version of git was shipping with fedora 16 around late
Feb 2012.

On fedora's build farm, git-1.7.7.5 was bult in dec 2011 and git-1.7.7.6 was built
on 2012-01-19 . Depending on how soon
1.7.7.6 filtered down to update, and when I update my git and also tracked R,
(all three of these events probably happened around 22 Feb), I could be
using either 1.7.7.5 or 1.7.7.6. I still have the system software update log around
(the repo was cloned on a now-dead system, then moved over when it died),
and presumably I can get git log to show me the fetch date (?), I might
be able to tell whether it is 17.7.5 or 1.7.7.6 if you really want to know.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Regression and failure to clone/fetch with new code Re: git-svn performance
  2014-10-30  0:28         ` Eric Wong
@ 2014-10-30  2:35           ` Hin-Tak Leung
  2014-10-30  8:46             ` Eric Wong
  0 siblings, 1 reply; 14+ messages in thread
From: Hin-Tak Leung @ 2014-10-30  2:35 UTC (permalink / raw)
  To: Eric Wong
  Cc: stoklund, fabian.schmied, git, sam, stevenrwalter, waste.manager,
	amyrick

Here is the data dumper info . I tried the dumper code on the R repo
as well, and saw that against the virtual box repo, there is one 
curious difference - $self->{last_rev} is a string rather than a number.
I tried hacking around doing "$x += 0;" to coerce last_rev
to a number at various places but didn't get very far. There seems to be some caching
code in RA->get_dir so presumably that's why the same code run
on one repo gives it as string while on another gives it a number. Hope
you can figure where the coersion to string happened.

--------
$ git svn fetch --all
Index mismatch: d6c75bc195b1daad647322e2cc025bd31265c6b9 != 3927d05f6ab037fcf2b4d964c9633efade037d1b
rereading a65b5fc0077c2fa80a344833b65ac19ff4ae88b6
	M	src/VBox/Main/HostImpl.cpp
$VAR1 = [
          bless( {
                   'map_root' => '.git/svn/refs/remotes/origin/trunk/.rev_map',
                   '-use_svm_props' => undef,
                   'ra_uuid' => 'cfe28804-0f27-0410-a406-dd0f0b0b656f',
                   'pushurl' => undef,
                   '-follow_parent' => 1,
                   '-no_metadata' => undef,
                   '-rewrite_uuid' => undef,
                   'repo_id' => 'svn',
                   '-rewrite_root' => undef,
                   'index' => '.git/svn/refs/remotes/origin/trunk/index',
                   'dir' => '.git/svn/refs/remotes/origin/trunk',
                   'ref_id' => 'refs/remotes/origin/trunk',
                   'url' => 'http://www.virtualbox.org/svn/vbox',
                   'last_rev' => '28923',
                   'last_commit' => 'a65b5fc0077c2fa80a344833b65ac19ff4ae88b6',
                   '_path' => 'trunk',
                   'config' => '.git/svn/config',
                   'logged_rev_props' => {
                                           'log' => 'Main/Host: fix lock order issues in several methods
',
                                           'date' => '2010-04-30T09:08:17.252108Z',
                                           'author' => 'vboxsync'
                                         }
                 }, 'Git::SVN' ),
          'trunk',
          '28923',
          'trunk',
          28924,
          '/branches/VBox-3.0:58652'
        ];
Incorrect parameters given: Could not convert '%ld' into a number at /usr/share/perl5/vendor_perl/Git/SVN.pm line 1713.

------

--------------------------------------------
On Thu, 30/10/14, Eric Wong <normalperson@yhbt.net> wrote:
 
> I was skimming and missed the part about Debian
 packages :)


I only asked because you mentioned using Debian :-).
The other 'Eric Wong' maintains/maintained a few chinese-related
debian packages, from some years ago.

I know of two "Ken Sharp", one of ghostscript and another of wine,
and two "David Turner", one of freetype and another of FSF's legal matters.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Regression and failure to clone/fetch with new code Re: git-svn performance
  2014-10-30  2:35           ` Hin-Tak Leung
@ 2014-10-30  8:46             ` Eric Wong
  0 siblings, 0 replies; 14+ messages in thread
From: Eric Wong @ 2014-10-30  8:46 UTC (permalink / raw)
  To: Hin-Tak Leung
  Cc: stoklund, fabian.schmied, git, sam, stevenrwalter, waste.manager,
	amyrick

Hin-Tak Leung <htl10@users.sourceforge.net> wrote:
> Here is the data dumper info . I tried the dumper code on the R repo
> as well, and saw that against the virtual box repo, there is one 
> curious difference - $self->{last_rev} is a string rather than a number.
> I tried hacking around doing "$x += 0;" to coerce last_rev
> to a number at various places but didn't get very far. There seems to be some caching
> code in RA->get_dir so presumably that's why the same code run
> on one repo gives it as string while on another gives it a number. Hope
> you can figure where the coersion to string happened.

Thanks, I'm not able to reproduce the issue, but can you try the
following?

diff --git a/perl/Git/SVN/Ra.pm b/perl/Git/SVN/Ra.pm
index 75cdac9..82d6108 100644
--- a/perl/Git/SVN/Ra.pm
+++ b/perl/Git/SVN/Ra.pm
@@ -153,6 +153,7 @@ sub url {
 sub check_path {
 	my ($self, $path, $r) = @_;
 	my $cache = $self->{cache}->{check_path};
+	$r = int($r);
 	if ($r == $cache->{r} && exists $cache->{data}->{$path}) {
 		return $cache->{data}->{$path};
 	}
@@ -169,6 +170,7 @@ sub check_path {
 sub get_dir {
 	my ($self, $dir, $r) = @_;
 	my $cache = $self->{cache}->{get_dir};
+	$r = int($r);
 	if ($r == $cache->{r}) {
 		if (my $x = $cache->{data}->{$dir}) {
 			return wantarray ? @$x : $x->[0];
---
The above should apply to my current master which has some
minor cleanups (which I hope to send to Junio tomorrow).

The following changes since commit fbecd99861ea5795aeba46faf2ac7a8c1b70d485:

  Update draft release notes to 2.2 (2014-10-24 15:02:17 -0700)

are available in the git repository at:

  git://bogomips.org/git-svn.git master

for you to fetch changes up to da0bc948ac2e01652a150fd4a57cebad6143242c:

  git-svn: add space after "W:" prefix in warning (2014-10-30 08:31:28 +0000)

----------------------------------------------------------------
Eric Wong (11):
      git-svn: reduce check_cherry_pick cache overhead
      git-svn: cache only mergeinfo revisions
      git-svn: remove mergeinfo rev caching
      git-svn: reload RA every log-window-size
      git-svn: remove unnecessary DESTROY override
      git-svn: save a little memory as fetch progresses
      git-svn: disable _rev_list memoization
      Git.pm: add specified name to tempfile template
      git-svn: prepare SVN::Ra config pieces once
      git-svn: (cleanup) remove editor param passing
      git-svn: add space after "W:" prefix in warning

Jakob Stoklund Olesen (2):
      git-svn: only look at the new parts of svn:mergeinfo
      git-svn: only look at the root path for svn:mergeinfo

Sveinung Kvilhaugsvik (1):
      git-svn.txt: advertise pushurl with dcommit

 Documentation/git-svn.txt |   4 ++
 perl/Git.pm               |   5 +-
 perl/Git/SVN.pm           | 125 ++++++++++++++++++++++++++++------------------
 perl/Git/SVN/Ra.pm        |  90 ++++++++++++++++++---------------
 4 files changed, 134 insertions(+), 90 deletions(-)

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: differences between old clone and new  Re: git-svn performance
  2014-10-30  0:55         ` Hin-Tak Leung
@ 2014-10-30 23:08           ` Eric Wong
  0 siblings, 0 replies; 14+ messages in thread
From: Eric Wong @ 2014-10-30 23:08 UTC (permalink / raw)
  To: Hin-Tak Leung
  Cc: stoklund, fabian.schmied, git, sam, stevenrwalter, waste.manager,
	amyrick

Hin-Tak Leung <htl10@users.sourceforge.net> wrote:
> That's quite straight-forward, I think  - except for the recent burst (I am essentially
> adapting the git 2.1.0 release shipped by the upcoming fedora 21 scheduled for christmas)
> I tend to update to the latest fedora release about a week or two after release;
> fedora 17 was shipped in May 2012 and only just enter Alpha in 22 Feb 2012.
> and I tracked R at least as frequently as weekly around then;
> So I would be using what ever version of git was shipping with fedora 16 around late
> Feb 2012.
> 
> On fedora's build farm, git-1.7.7.5 was bult in dec 2011 and git-1.7.7.6 was built
> on 2012-01-19 . Depending on how soon
> 1.7.7.6 filtered down to update, and when I update my git and also tracked R,
> (all three of these events probably happened around 22 Feb), I could be
> using either 1.7.7.5 or 1.7.7.6. I still have the system software update log around
> (the repo was cloned on a now-dead system, then moved over when it died),
> and presumably I can get git log to show me the fetch date (?), I might
> be able to tell whether it is 17.7.5 or 1.7.7.6 if you really want to know.

I tried a full clone on 1.7.7.6 (no git-svn difference from 1.7.7.5).
Even with that old git, I was able to reproduce the same merge behavior
as current (Junio's) master as well as our recent patches.

So I believe r58454, r46925, and r46906 in the R repo are all handled
correctly and no mergeinfo-handling regressions are introduced in the
latest round of git-svn changes.  Thanks.

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2014-10-30 23:08 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-10-27 23:26 Anomaly with the new code - Re: git-svn performance Hin-Tak Leung
2014-10-28  5:40 ` differences between old clone and new " Hin-Tak Leung
2014-10-28  7:41   ` Eric Wong
2014-10-28 23:59     ` Hin-Tak Leung
2014-10-30  0:21       ` Eric Wong
2014-10-30  0:55         ` Hin-Tak Leung
2014-10-30 23:08           ` Eric Wong
2014-10-28 23:33   ` Regression and failure to clone/fetch with new code " Hin-Tak Leung
2014-10-29 19:23     ` Eric Wong
2014-10-30  0:06       ` Hin-Tak Leung
2014-10-30  0:28         ` Eric Wong
2014-10-30  2:35           ` Hin-Tak Leung
2014-10-30  8:46             ` Eric Wong
2014-10-28  7:45 ` Anomaly with the new code - " Eric Wong

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).