FreeBSD Ports statistics

John Arbash Meinel john at arbash-meinel.com
Sun Sep 3 15:25:50 BST 2006


Lele Gaifax wrote:
> John Arbash Meinel wrote:
>> Lele Gaifax wrote:
>>> John Arbash Meinel wrote:
>>>> My best guess is that it parses the rlog contents, and then leaves the
>>>> Unicode string in RAM. But doesn't write that to the state file,
>>>> because
>>>> it doesn't need it anymore.
>>> Uhm, this clearly shouldn't happen, I'll try to figure out why it's
>>> keeping the usage so high.
>>
>> Well, as I dig deeper, it might have to do with the state file.
>> It seems if you have a state on disk, it only needs to load 1 entry to
>> process at a time. Versus having everything loaded. This may not be it,
>> but it is definitely something that I saw.
> 
> The state file is read an entry at a time, but what you noticed was
> related to the steps *before* state file creation: at bootstrap time,
> tailor needs to slurp the whole "cvs rlog" output and transform that
> into a collection of Changesets that it writes into the state file. From
> that point on, all operations should fetch a changeset at a time from
> the state file.

Well, I can't say exactly what is being held. My best guess was that it
was the rlog. All I can say is that when bootstrapping, memory went to
>1GB. And then when running later, it dropped to 120MB. So it seemed
like rlog would be the culprit.

> 
> What it seems happening is that the *original* "cvs rlog" output stays
> around for more than needed... I'll try to understand what's going on.
> 
>>
>>> But what do you mean with "it isn't able to combine multiple updates"?
>>>
>>
>> Technically, all of those have the same revision, and you could
>> instead do:
>>
>> cvs update -d -r 1.1 file/one file/two file/three
> 
> Yup, this is really simple and effective: I implemented it in
> http://progetti.arstecnica.it/tailor/changeset/1271
> 
> Thank you,
> bye, lele.

Is this patch in the main distribution (or will be)? I can certainly
download it locally, and see if it works for me. Though I'm not sure how
to pull a new changeset out of 'trac' to get it into a darcs branch.

And to be honest, at this point, the 'bzr commit' time is starting to
overwhelm the 'cvs update time'. Though every second I can shave off per
revision will help. (I'm up to revno 13963, and I have 17584
files/directories being versioned, and each commit is taking around 8s)
A committed inventory is now 4.1MB.

If you can tell me how to get your patch, I would appreciate it.

John
=:->

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 254 bytes
Desc: OpenPGP digital signature
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20060903/11374157/attachment.pgp 


More information about the bazaar mailing list