[PATCH] FTP transport
Daniel Silverstone
dsilvers at digital-scurf.org
Thu Nov 17 17:45:16 GMT 2005
On Thu, 2005-11-17 at 13:51 +0100, Matthieu Moy wrote:
> > In an attempt to solve one of the BzrAdoptionBlockers I implemented an
> > ftp:// transport today.
> Cool!
Thanks. I was quite ill when I did it :-)
> > I'd appreciate comments/bug reports etc
> It seems to open a new ftp connection for each operation.
[snip]
> It isn't optimal performance-wise. But worse than this, my provider
> just answers:
> bzr: ERROR: bzrlib.transport.ftp.FtpTransportError: Error setting up connection: 530 Sorry, the maximum number of clients (2) for this user are already connected.
> at /net/ecrins/local/moy/usr/src/bzr.dev/bzrlib/transport/ftp.py line 98
> in _get_FTP
Yeah, this is sucky.
I've written a patch which fixes a 'put' related issue and also covers
this eventuality by seriously forcing one connection per
host/user/pass/active four-tuple
> (it did create the bzr.dev directory, but it's empty)
Yeah. The other issue is that even after it completes successfully, only
the .bzr dir will be populated, it won't be a working tree of any
usefulness, but it works fine for merge/branch
> (I don't know whether this comes from the transport layer of from
> ftp.py itself, though)
The transport layer clones several times before it ever does anything,
which caused the connection to be created several times because it was
lazy. Now it's lazy but memoized safely.
Please merge from me and try again, tell me what you think.
Thanks,
D.
--
Daniel Silverstone http://www.digital-scurf.org/
PGP mail accepted and encouraged. Key Id: 2BC8 4016 2068 7895
More information about the bazaar
mailing list