Overview
SHA1 Hash: | 3a00ac5aa2b0a4b67f043f8dd30608b6211a4053 |
---|---|
Date: | 2007-10-23 02:29:55 |
User: | aku |
Comment: | Due to quickly building memory pressure for large cvs repositories (thousands of revisions and symbol object) we have to save the pertinent information of a file immediately after it has been processed and then clear the memory. Inserted the basic skeleton for this into pass and file objects. |
Timelines: | ancestors | descendants | both | trunk |
Other Links: | files | ZIP archive | manifest |
Tags And Properties
- branch=trunk inherited from [a28c83647d]
- sym-trunk inherited from [a28c83647d]
Changes
[hide diffs]Modified tools/cvs2fossil/lib/c2f_file.tcl from [55db58afdc] to [1f4a6c30ea].
@@ -66,10 +66,13 @@ ## Persistence (pass II) method persist {} { } + method drop {} { + } + # # ## ### ##### ######## ############# ## Implement the sink method begin {} {#ignore} @@ -402,11 +405,11 @@ } unset mytags($revnr) } else { set rev $myrev($revnr) foreach tag $taglist { - $rev addtag $tag + $rev addtag $tag $tag settagrev $rev } } } return
Modified tools/cvs2fossil/lib/c2f_pcollrev.tcl from [47f6b87c0b] to [38ef86c838].
@@ -208,10 +208,21 @@ } else { global errorInfo trouble internal $errorInfo } } + + # We persist the core of the data collected about each + # file immediately after it has been parsed and + # wrangled into shape, and then drop it from + # memory. This is done to keep the memory requirements + # within limits, i.e. without doing it this way it is + # easy to blow 1G of RAM with all the objects + # (revisions and file-level symbols). + + $file persist + $file drop } } repository printrevstatistics repository persistrev