git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Eric Wong <normalperson@yhbt.net>
To: Junio C Hamano <gitster@pobox.com>
Cc: git@vger.kernel.org, 430091@bugs.debian.org
Subject: [PATCH] git-svn: fix blocking with svn:// servers after do_switch
Date: Wed, 4 Jul 2007 14:07:42 -0700	[thread overview]
Message-ID: <20070704210526.GA9582@muzzle> (raw)
In-Reply-To: <20070626133704.24521.qmail@a4f750d1ddce1f.315fe32.mid.smarden.org>

We now explicitly disconnect before starting new SVN::Ra
connections.  SVN::Ra objects will automatically be disconnected
from the server on DESTROY.

SVN servers seem to have problems accepting multiple connections
from one client, and the SVN library has trouble being connected
to multiple servers at once.  This appears to cause opening the
second connection to block, and cause git-svn to be unusable
after using the do_switch() function.

git-svn opens another connection because a workaround is
necesary for the buggy reparent function handling on certain
versions of svn:// and svn+ssh:// servers.  Instead of using the
reparent function (analogous to chdir), it will reopen a new
connection to a different URL on the SVN server.

Signed-off-by: Eric Wong <normalperson@yhbt.net>
---

  Gerrit Pape <pape@smarden.org> wrote:
  > Hi, on Debian unstable the current version of libsvn-perl is 1.4.4dfsg1.
  > With this version git-svn uses do_switch instead of do_update, which
  > seems to not work properly, please see
  > 
  >  http://bugs.debian.org/430091
  > 
  > on how to reproduce the problem.  The following also is showing a
  > problem, as it blocks in read() after do_switch
  > 
  >  git svn clone -T trunk -b branches -t tags \
  >    svn://bruce-guenter.dyndns.org/bglibs
  > 
  > I'm not sure whether this is a git-svn or a subversion problem, thanks
  > for your input.

  Thanks for the bug report.  Sorry for the latency these days, I've
  been quite busy with other things.

  Although this fixes blocking reads, this does *not* fix the
  "Malformed network data" issue, which has been around for a
  while...

  I'll try to find time to fix the "Malformed network data" bug
  in a few days time, but it's not fatal (just restart git-svn,
  this error happens at a point where it's not possible to have
  a corrupted import).

 git-svn.perl |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/git-svn.perl b/git-svn.perl
index 51979f9..b3dffcc 100755
--- a/git-svn.perl
+++ b/git-svn.perl
@@ -3002,6 +3002,7 @@ sub new {
 	      \&Git::SVN::Prompt::username, 2),
 	  ]);
 	my $config = SVN::Core::config_get_config($config_dir);
+	$RA = undef;
 	my $self = SVN::Ra->new(url => $url, auth => $baton,
 	                      config => $config,
 			      pool => SVN::Pool->new,
-- 
Eric Wong

  parent reply	other threads:[~2007-07-04 21:07 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-06-26 13:37 git-svn: libsvn-perl_1.4.4 and do_switch() Gerrit Pape
2007-07-04  8:04 ` Gerrit Pape
2007-07-04 21:07 ` Eric Wong [this message]
2007-08-07 13:42   ` git-svn: "Malformed network data" issue Gerrit Pape
2007-09-07  7:34     ` [PATCH] git-svn: fix "Malformed network data" with svn:// servers Eric Wong
2007-09-07 10:07       ` Eric Wong
2007-09-07 11:00         ` [PATCH (try 2)] " Eric Wong
2008-02-08 16:24           ` Gerrit Pape
2008-04-18 13:25             ` Gerrit Pape

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

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20070704210526.GA9582@muzzle \
    --to=normalperson@yhbt.net \
    --cc=430091@bugs.debian.org \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    /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.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).