empty push performance slower than needed

Bug #86392 reported by Robert Collins
2
Affects Status Importance Assigned to Milestone
Bazaar
Fix Released
High
Unassigned
bzr (Ubuntu)
Fix Released
High
Andrew Bennetts

Bug Description

bzr 0.14: An empty push over a 1.5Mb line, with 50ms latency, using bzr
+ssh, with a tree that has 230KB in revision history and 2.5MB in
revision.kndx takes 46 seconds.

Just sshing in:
% time ssh HOST echo true
true
0.02s user 0.00s system 0% cpu 18.099 total
%

So we're looking at 28 seconds once bzr has setup the connection, or
possibly bzr is making two connections. Either way its extremely slow,
even considering locking the repo and branch, and then reading the
revision-history, only about 240KB of data should be transfered, and
with 50ms latency, that should be about 2 seconds total.

 affects bzr
 status confirmed
 importance high
--
GPG key available at: <http://www.robertcollins.net/keys.txt>.

Revision history for this message
Robert Collins (lifeless) wrote :

% /usr/bin/time ssh HOST echo true
true
0.00user 0.00system 0:00.17elapsed

So the baseline to make new connections when there is a master channel is subsecond.

Changed in bzr:
importance: Undecided → High
status: Unconfirmed → Confirmed
Revision history for this message
John A Meinel (jameinel) wrote :

see also bug 75721

Revision history for this message
John A Meinel (jameinel) wrote :

I wonder if a lot of this has now been addressed with pack and Branch6 formats

Care to do a timing test? I'm guessing this is actually significantly better and this bug can be closed.

Changed in bzr:
status: Confirmed → Incomplete
Revision history for this message
Andrew Bennetts (spiv) wrote :

Grr, Launchpad just ate my comment because I tried to change two statuses at once. In short: this is < 10 RPCs since sometime last year (and there's a test ensuring it stays that way in the test suite), so I think this is fixed. At 50ms latency, 10 RPCs should give less than a second of network time... at that point the time it takes bzr to start locally plus the time it takes to start the remote bzr is probably greater than the time spent doing work on the network (not even counting SSH handshakes...)

Changed in bzr (Ubuntu):
assignee: nobody → spiv
status: Confirmed → Fix Released
Changed in bzr:
status: Incomplete → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.