|
From: | Markus Schiltknecht |
Subject: | [Monotone-devel] Re: monotone CVS import failed. |
Date: | Tue, 17 Oct 2006 17:38:27 +0200 |
User-agent: | Thunderbird 1.5.0.7 (X11/20060927) |
Jon Smirl wrote:
Why do you need to store the filenames/rev strings at all? Once the rev is in the database you don't need the strings any more and they are quite large, 100MB or more in my case.
The filename seems obvious, how else would I know what file a cvs_event is bound to? And the CVS revision is kept for informative purpose: I want users to be able to determine, what CVS revisions a certain monotone revision consists of.
I very much doubt it's more than 100MB, though. It's roughly: (different files + different version strings) * (avg str length) + sizeof(int) * (total cvs events) * 2Assuming the (avg str length) is 1K (!), you could theoretically store more than 52K *distinct* filenames and over 13M pointers (thus over 6 M total cvs events) in 100 MB of memory (assuming 50% - 50% sharing between the two summands).
I don't think that leaves much room for optimization. Regards Markus
[Prev in Thread] | Current Thread | [Next in Thread] |