Bazaar NG performance on large repositories

Nicholas Allen allen at ableton.com
Mon Oct 30 18:18:53 GMT 2006


John Arbash Meinel wrote:
> Nicholas Allen wrote:
>   
>>>> bzr log some-file
>>>> This command took a very long time. In fact, I gave up waiting for it to
>>>> complete. No output was seen on the terminal at all - even after 5
>>>> minutes. I think in its current state this would be completely unusable
>>>> for us. I hope that bzr will see some performance improvements here.
>>>>     
>>>>         
>>> log some-file reads the inventory of each commit, so it scales with tree
>>> size.  That's a limit of the current implementation, though.  We can
>>> look at each file to see what revisions modified it, though I'm not sure
>>> whether that will detect all kinds of changes.
>>>   
>>>       
>> Is that something that is hard to change? Would it not be possible to
>> have a file somewhere (in .bzr) for each file under version control that
>> lists the revisions that modified it? These files could be calculated
>> once after an initial pull and then updated on each commit. Then a log
>> for a single command would be very fast. The files could be updated the
>> first time a log on a single file is done or always after pulling (but
>> this would increase the pull time of course).
>>     
>
> As I commented, most of this is already done. We don't record deletes in
> that index, and we really should.
>   
Great! So it sounds pretty easy to make log use this file then. Perhaps 
I can take a look at implementing this - but it would probably take me a 
while to get familiar with the code base first and I am quite busy so 
not sure how long it would take me...
>   
>>>  would be the execute bit.
>>>       
>> Why does it claim that the executable bit changed for files when I
>> didn't change this?
>>
>> Thanks,
>>
>> Nick
>>     
>
> It would be nice to figure this out. If it isn't a public project, I
> would be happy to investigate it with you on IRC at chat.freenode.net
> #bzr. We can investigate over email, but it is usually much
> easier/faster on IRC.
Ok - unfortunately, it is a closed source project so I would not be able 
to share the source code with you. I can't do it today but would be 
happy to offer any assistance to solve the problem. I was using the 
0.12rc release but through a cygwin terminal so not sure if that had 
something to do with it. I'll send you an email to arrange a time on IRC 
then (I will probably have some time tomorrow)...

Thanks,

Nick




More information about the bazaar mailing list