Junio C Hamano [off-list ref] wrote:
* db/fetch-pack (Fri Sep 14 03:31:25 2007 -0400) 22 commits
...
This is Daniel's fetch-pack in C plus fixups from Shawn.
Unfortunately the fixups breaks t3200 ("*** glibc detected ***
fetch: free(): invalid pointer xxx ***"), which I haven't looked
into yet.
Doesn't crash out on my Mac OS X system but I am getting the
above failure on my amd64 Linux system. I'm debugging it now.
I'll have to quit in about an hour and pick it up later, so don't
expect a patch immediately. But I'll certainly send something soon.
Clearly I made a change in my fixups that I shouldn't have. ;-)
--
Shawn.
"Shawn O. Pearce" [off-list ref] wrote:
Junio C Hamano [off-list ref] wrote:
quoted
* db/fetch-pack (Fri Sep 14 03:31:25 2007 -0400) 22 commits
...
quoted
This is Daniel's fetch-pack in C plus fixups from Shawn.
Unfortunately the fixups breaks t3200 ("*** glibc detected ***
fetch: free(): invalid pointer xxx ***"), which I haven't looked
into yet.
Doesn't crash out on my Mac OS X system but I am getting the
above failure on my amd64 Linux system.
OK, so in addition to the above fixups Junio mentions I have
also sent two more series today:
2 patch "fixup of the fixup" to resolve the t3200 crash
5 patch "fixup + cleanup" of http support
and now I just discovered that pushing to yourself is probably also
broken by this series:
$ git push . jc/maint:gfi-maint
updating 'refs/heads/gfi-maint' using 'refs/remotes/jc/maint'
from 05cc2ffc572f05e8aeec495a9ab9bc9609863491
to 8419d2ee9ba8b375186a5c1019df8dfbce610aba
Also local refs/heads/gfi-maint
Generating pack...
Done counting 0 objects.
Writing 0 objects...
Unpacking 0 objects...
error: Ref refs/heads/gfi-maint is at 8419d2ee9ba8b375186a5c1019df8dfbce610aba but expected 05cc2ffc572f05e8aeec495a9ab9bc9609863491
error: failed to lock refs/heads/gfi-maint
Total 0 (delta 0), reused 0 (delta 0)
ng refs/heads/gfi-maint failed to lock
error: failed to push to '.'
What's really exciting is we actually updated the ref 'gfi-maint',
even though it was "ng" and we failed to push. Yup. More work
for me to look at tomorrow. Right now I think I'm all memory
corruptioned out for *** brain detected *** Shawn(): nextword():
too tired, try sleep ***
;-)
--
Shawn.
"Shawn O. Pearce" [off-list ref] wrote:
quoted
Junio C Hamano [off-list ref] wrote:
quoted
* db/fetch-pack (Fri Sep 14 03:31:25 2007 -0400) 22 commits
...
quoted
This is Daniel's fetch-pack in C plus fixups from Shawn.
Unfortunately the fixups breaks t3200 ("*** glibc detected ***
fetch: free(): invalid pointer xxx ***"), which I haven't looked
into yet.
With all of my fixups applied I took some performance measurements
today from two of my larger day-job repositories:
A.git (356 branches):
Current Fetch New "Builtin" Fetch
------------------ --------------------
real 3m19.921s real 0m9.969s
user 1m58.050s user 0m1.449s
sys 2m4.747s sys 0m4.465s
B.git (24 branches):
Current Fetch New "Builtin" Fetch
------------------ --------------------
real 0m21.250s real 0m4.735s
user 0m10.981s user 0m0.510s
sys 0m12.387s sys 0m1.481s
All runs were a no-op fetch over SSH on the LAN. The system running
git-fetch was a Cygwin/Windows 2000 box and the server was Solaris 9.
Just starting an SSH connection (`ssh solsrv echo hi`) takes me on
average 1 second so a 4.7s no-op fetch on the smaller repository
is very respectable.
3m19s vs. 9s? I'll take 9s, thankyouverymuch. Even if I have
more testing and debugging to do. Especially since the two repos
above are only a sampling of the actual set I have to deal with on
a daily basis.
--
Shawn.