bzr log http+urllib does not work, http+pycurl is too slow

Vincent Ladeuil v.ladeuil+lp at free.fr
Wed Dec 12 14:31:24 GMT 2007


Sorry, reading in the wrong order :-/

>>>>> "bialix" == Alexander Belchenko <bialix at ukr.net> writes:

    bialix> Vincent Ladeuil пишет:
    >>>>>>> "bialix" == Alexander Belchenko <bialix at ukr.net> writes:
    >> 
    bialix> I have Trac running as separate python application on
    bialix> separate win32 machine.  I put pack shared repo in
    bialix> the Trac's htdocs directory, so my branches are
    bialix> available via http protocol (I use custom port 8000).
    bialix> Well, at least `bzr revno
    bialix> http://host:8000/chrome/site/branches/Logic` works as
    bialix> expected. But not log command.
    >> 
    bialix> On my client machine I use custom bzr.exe 1.0rc3
    bialix> compiled without pycurl, so I encounter this bug.
    >> 
    >> <snip/>
    >> 
    bialix> http readv of 930af4714be1e33318bb630b8d626540.pack  offsets =>
    >> 
    >> Using -Dhttp will give us the true ranges requested.

    bialix> It seems that server each time respond with full text
    bialix> rather than requested range. I'll send you http.log
    bialix> in another mail.

Yup, you're right. Bad server, very very very bad for packs :-(


    bialix> Probably http transport should buffer the full text
    bialix> in such case to avoid further request for another
    bialix> range?

I have a TODO comment about that... but that will make the whole
streamed readv rewrite totally useless...

I'll file a bug for it,

I'll wait for your .bzr.log with urllib, but I'm pretty sure the
patch will be effective because what happens is that the finish()
method will try to get rid of the part of the file that is in
excess from the ranges requested, in your case it may be several
MB.

     Vincent




More information about the bazaar mailing list