ftp access inefficiency
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Bazaar |
Confirmed
|
High
|
Unassigned | ||
Breezy |
Won't Fix
|
Low
|
Unassigned |
Bug Description
Doing a pull of couple revisions over FTP is very slow. Today I've spent about 4 minutes to pull 1 revision with changes in 2 files which are not very big. After pull new pack in my 2a repo is only 6KB big.
Looking at the .bzr.log I see that bzr downloading the same pack file from the FTP server again and again and again:
12.234 Using fetch logic to copy between
CHKInventoryRep
and CHKInventoryRep
12.234 fetch up to rev {<email address hidden>}
12.234 FTP get: /xxx/.bzr/
12.922 FTP get: /xxx/.bzr/
13.750 FTP get: /xxx/.bzr/
14.672 FTP get: /xxx/.bzr/
15.312 FTP get: /xxx/.bzr/
16.031 FTP get: /xxx/.bzr/
16.781 FTP get: /xxx/.bzr/
53.312 FTP get: /xxx/.bzr/
54.219 FTP get: /xxx/.bzr/
54.937 FTP get: /xxx/.bzr/
84.844 FTP get: /xxx/.bzr/
124.609 FTP get: /xxx/.bzr/
125.359 FTP get: /xxx/.bzr/
126.250 FTP get: /xxx/.bzr/
166.953 FTP get: /xxx/.bzr/
203.562 FTP get: /xxx/.bzr/
204.281 FTP get: /xxx/.bzr/
205.000 FTP get: /xxx/.bzr/
243.531 FTP get: /xxx/ddaa/
As you can see the pack file 3a9ac6d908537c3
How can this could be improved/fixed? Maybe some simple cache to keep downloaded files in the memory or on the disk in TEMP location? I need help to fix this.
Related branches
- Vincent Ladeuil: Approve
- Martin Packman: Approve
-
Diff: 1510 lines (+17/-1308)16 files modifiedbreezy/help_topics/en/authentication.txt (+3/-3)
breezy/lockdir.py (+0/-3)
breezy/plugins/git/tests/test_dir.py (+1/-1)
breezy/plugins/upload/__init__.py (+1/-1)
breezy/plugins/upload/tests/test_upload.py (+1/-25)
breezy/tests/__init__.py (+0/-6)
breezy/tests/blackbox/test_help.py (+0/-2)
breezy/tests/ftp_server/__init__.py (+0/-82)
breezy/tests/ftp_server/pyftpdlib_based.py (+0/-223)
breezy/tests/test_ftp_transport.py (+0/-151)
breezy/tests/test_http.py (+2/-2)
breezy/tests/test_smart_transport.py (+1/-1)
breezy/tests/transport_util.py (+8/-19)
breezy/transport/__init__.py (+0/-23)
breezy/transport/ftp/__init__.py (+0/-638)
breezy/transport/ftp/_gssapi.py (+0/-128)
tags: | added: ftp |
tags: | added: performance |
tags: | added: check-for-breezy |
tags: | removed: check-for-breezy |
Changed in brz: | |
status: | New → Triaged |
importance: | Undecided → Low |
Changed in brz: | |
status: | Triaged → Won't Fix |
Every download of that file via FTP costs 27 seconds. So it's 162 seconds (2.5+ minutes) just to re-download the same file again and again.