From: Eric Wong <normalperson@yhbt.net>
To: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Cc: git@vger.kernel.org
Subject: Re: git svn forking an awful lot of "git config"s
Date: Wed, 20 Feb 2008 14:39:53 -0800 [thread overview]
Message-ID: <20080220223953.GA32663@hand.yhbt.net> (raw)
In-Reply-To: <alpine.LSU.1.00.0802201520580.17164@racer.site>
Johannes Schindelin <Johannes.Schindelin@gmx.de> wrote:
> Hi,
>
> we are approaching our first release of msysGit's installer with git-svn.
> However, I am experiencing a very bad performance, and an error:
>
> $ git svn fetch
> trace: exec: 'git-svn' 'fetch'
> trace: built-in: git 'config' '--bool' '--get' 'svn.fetchall'
> trace: built-in: git 'config' '--get' 'svn.username'
> trace: built-in: git 'config' '--get' 'svn.repackflags'
> trace: built-in: git 'config' '--bool' '--get' 'svn.quiet'
> trace: built-in: git 'config' '--bool' '--get' 'svn.noauthcache'
> trace: built-in: git 'config' '--get' 'svn.revision'
> trace: built-in: git 'config' '--int' '--get' 'svn.repack'
> trace: built-in: git 'config' '--int' '--get' 'svn.logwindowsize'
> trace: built-in: git 'config' '--bool' '--get' 'svn.nocheckout'
> trace: built-in: git 'config' '--get' 'svn.configdir'
> trace: built-in: git 'config' '--bool' '--get' 'svn.noMetadata'
> trace: built-in: git 'config' '--bool' '--get' 'svn.useSvnsyncProps'
> trace: built-in: git 'config' '--bool' '--get' 'svn.followparent'
> trace: built-in: git 'config' '--get' 'svn.authorsfile'
> trace: built-in: git 'config' '--bool' '--get' 'svn.useSvmProps'
> trace: built-in: git 'config' '--bool' '--get' 'svn.uselogauthor'
> trace: built-in: git 'rev-parse' '--symbolic' '--all'
> trace: built-in: git 'config' '-l'
> trace: built-in: git 'config' '-l'
> trace: built-in: git 'config' '-l'
> trace: built-in: git 'config' '--int' '--get' 'svn-remote.svn.branches-maxRev'
> trace: built-in: git 'config' '--int' '--get' 'svn-remote.svn.tags-maxRev'
> trace: built-in: git 'config' '--get' 'svn-remote.svn.url'
> trace: built-in: git 'config' '--get' 'svn-remote.svn.uuid'
> trace: built-in: git 'config' 'svn-remote.svn.branches-maxRev' '8'
> could not lock config file
> config svn-remote.svn.branches-maxRev 8: command returned error: 255
>
> I suspect that the locking problem is due to some strange anti-virus
> interaction, because issuing the same command on the command line
> succeeds.
I believe somebody on the list also had the same problem with file
locking in Windows. Unfortunately, I have little idea as to what could
be wrong. Could Windows not be releasing file locks properly?
It could be worth it to write a standalone Perl script that replicates
the git-config calls without the rest of git-svn getting in the way...
> However, did you notice the many calls to "git config"? Especially the
> three ones which list all values anyway?
>
> I am not really sure if that is the single reason of the slowness --
> remember, Windows is mightily spawn()-challenged -- but it sure would help
> to have git-svn read the config once at the beginning, probably with "-z",
> too, and then just read from the cached values, no?
Many months ago, I thought about implementing a transparent caching layer
in Git.pm to work with git configs. Of course, that requires
cooperation from all readers/writers within the process... Done
correctly, it would help more than just git-svn. too.
I think I had this idea around the time we made git-config output Perl
hashes and arrays.
> Ciao,
> Dscho
>
> P.S.: how far is the svn:external->submodule stuff?
Yikes. I've let other work pile up on my ever-growing todo-list :/
I'll see if I can dig it out and wrap it up this weekend or next...
--
Eric Wong
next prev parent reply other threads:[~2008-02-20 22:40 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-20 15:27 git svn forking an awful lot of "git config"s Johannes Schindelin
2008-02-20 22:39 ` Eric Wong [this message]
2008-02-20 23:31 ` Jakub Narebski
2008-02-20 23:57 ` Nagy Balázs
2008-02-21 0:18 ` Johannes Schindelin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080220223953.GA32663@hand.yhbt.net \
--to=normalperson@yhbt.net \
--cc=Johannes.Schindelin@gmx.de \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.