readonly, chrooted, http transport fails to be smart about readvs with many ranges
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Bazaar |
Expired
|
Undecided
|
Unassigned |
Bug Description
I think this script (though I admit I haven't run exactly this one), uses far more memory than it should:
from bzrlib import trace
trace.enable_
from bzrlib.branch import Branch
from bzrlib.transport import get_transport
from bzrlib.transport import chroot
url = 'http://
t = get_transport(url)
chroot_server = chroot.
chroot_
t = get_transport(
t = get_transport(
t = t.clone('bzr.dev')
b = Branch.
b.lock_read()
a = b.repository.
revs = b.repository.
b.unlock()
If you don't have the choot and readonly decorators, the usage is much sensible.
The cause seems to be that the decorations somehow miss the smart consolidation of ranges that the http transports do. Not really sure of any more details.
Is that still true ?
What http client is used ? pycurl or urllib ? Both ?