Hi, Your patch seems to fix the problem. I tried several times and I can svn clone the whole repository in one go without a crash. Thanks, Valery On 30 January 2015 at 01:22, Eric Wong <normalperson@xxxxxxxx> wrote: > Valery Yundin <yuvalery@xxxxxxxxx> wrote: >> Hi, >> >> Here you go: >> dfa72fdb96befbd790f623bb2909a347176753c2 is the first bad commit > > Thank you. Can you give the following patch a try? > I have not been able to reproduce the problem on my end. > If it doesn't work out, I might be out of ideas for a bit :/ > Increasing --log-window-size will help you run longer without > the error, but that's not ideal as it can also eat memory. > > -----------------------8<---------------------- > From: Eric Wong <normalperson@xxxxxxxx> > Subject: [PATCH] git-svn: destroy all tempfiles when reloading RA > > This may fix the errors some users are seeing with: > "write .git/Git_svn_hash_XXXXXX: Bad file descriptor" > > Thanks to Valery Yundin for helping bisect the problem introduced in > commit dfa72fdb96befbd790f623bb2909a347176753c2 > (git-svn: reload RA every log-window-size) > > Cc: Valery Yundin <yuvalery@xxxxxxxxx> > Signed-off-by: Eric Wong <normalperson@xxxxxxxx> > --- > perl/Git.pm | 6 ++++++ > perl/Git/SVN/Ra.pm | 1 + > 2 files changed, 7 insertions(+) > > diff --git a/perl/Git.pm b/perl/Git.pm > index b5905ee..698018e 100644 > --- a/perl/Git.pm > +++ b/perl/Git.pm > @@ -1347,6 +1347,12 @@ sub temp_path { > $TEMP_FILES{$temp_fd}{fname}; > } > > +sub temp_reset_all { > + unlink values %TEMP_FILEMAP if %TEMP_FILEMAP; > + %TEMP_FILEMAP = (); > + %TEMP_FILES = (); > +} > + > sub END { > unlink values %TEMP_FILEMAP if %TEMP_FILEMAP; > } > diff --git a/perl/Git/SVN/Ra.pm b/perl/Git/SVN/Ra.pm > index 622535e..878679d 100644 > --- a/perl/Git/SVN/Ra.pm > +++ b/perl/Git/SVN/Ra.pm > @@ -397,6 +397,7 @@ sub gs_fetch_loop_common { > $_[0] = undef; > $self = undef; > $RA = undef; > + Git->temp_reset_all; > $gpool->clear; > $self = Git::SVN::Ra->new($ra_url); > $ra_invalid = undef; > -- > EW -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html