Fossil

Timeline
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

67 events for the month beginning 2007-12-01

Following month ↑
2007-12-31
11:20 Changes to wiki page "Opera" ... (artifact: e15992f4 user: anonymous)
11:17 Changes to wiki page "To Do List" ... (artifact: eb98d9f2 user: anonymous)
2007-12-13
16:24 Changes to wiki page "To Do List" ... (artifact: a1d2da3e user: jeremy_c)
2007-12-08
03:39
More comments on sql statements, slight reordering of some tables and conditions. ... (check-in: f7fe15cd user: aku tags: trunk)
02:59
Added comments explaining the select statement checking revision/file/project/metadata integrity ... (check-in: 808fbc47 user: aku tags: trunk)
2007-12-07
18:29 Added wiki page "Import CVS Repositories" ... (artifact: 1b7107cc user: aku)
08:55
Removed two unused classes. ... (check-in: 97e0e9dd user: aku tags: trunk)
2007-12-06
04:05
Reworked time keeping in the pass manager, the microseconds kept by by the 'time' command flow over after roughly 72 minutes (2^32 microseconds). We now use 'clock seconds' to explicitly keep time. This should flow over only after abuut 136 years. The loss of resolution is ok, the converter does not need it. Seconds are good enough. ... (check-in: 9a763fe5 user: aku tags: trunk)
03:58
Extended traversal core to allow custom labeling of the log output immediately before the traversal starts. ... (check-in: b81901ad user: aku tags: trunk)
03:56
Removed the automatic destruction of the traversed graph from the traversal core and put it into the caller (import only, currently). ... (check-in: b59cdc7f user: aku tags: trunk)
03:54
Added progress feedback to the file import, and moved the log output to level 8. ... (check-in: 08f80857 user: aku tags: trunk)
03:48
Fixed handling of empty revisions. ... (check-in: bf0b70d5 user: aku tags: trunk)
2007-12-05
21:35 Added wiki page "Import CVS Repositories" ... (artifact: ab72e745 user: anonymous)
21:02 Added wiki page "Import CVS Repositories" ... (artifact: f6923969 user: anonymous)
08:07
Merged mainline into my branch to get the newest application. ... (check-in: d0305b30 user: aku tags: trunk)
07:58
Bugfix. Translation implies encoding, not the reverse. This caused problems when parsing files with mixed-mode line-endings. The generated char offsets and lengths were off. Found during expansion. ... (check-in: 6f1c4424 user: aku tags: trunk)
07:57
Created new pass for the import of files and changesets. Uses the new file method and fossil accessor class to handle the file import. Changeset -> manifest conversion is _not_ covered yet. ... (check-in: d9fc75e5 user: aku tags: trunk)
07:55
Extended file handling with main logic to import an archive into fossil. Main parts are determining the various orders for expansion and import, and expanding all revisions in an archive into full texts, iteratively applying the stored deltas. ... (check-in: e100314e user: aku tags: trunk)
07:53
Integrated the new fossil management class with the option processor. New option --fossil to specify the fossil executable if it was not found in the PATH, or to overide the PATH. ... (check-in: 1a20a81f user: aku tags: trunk)
07:52
Added helper class managing access to fossil repositories. Already has a basic method to import and delta-compress a series of files. Used 'test' commands of fossil to get the necessary low-level access. ... (check-in: b6bf21e2 user: aku tags: trunk)
07:50
Put the graph traversal core of the cycle breaker core into a separate class, for use in other parts of the system. TODO: Rewrite the cycle breaker core in terms of this class. ... (check-in: e7013137 user: aku tags: trunk)
07:47
Extended project class with method return full path of the project, i.e. inclusive its repository base path. ... (check-in: 82e35d33 user: aku tags: trunk)
02:40 Added wiki page "Import CVS Repositories" ... (artifact: 1f8711cf user: aku)
02:32 Changes to wiki page "Import CVS Repositories" ... (artifact: a36f7cb9 user: aku)
02:29
Went to explicit var-substitution for the dynamic sql queries, makes formatting easier. ... (check-in: 0ee9711e user: aku tags: trunk)
02:25
Fixed typo, although it did not break anything. ... (check-in: 5b2d15f1 user: aku tags: trunk)
02:24
Fixed log progress use in last breaker pass. Disabled the check regarding revision order. It still triggers and I can't see anything wrong. Pressing forward for now, i.e. get the remaining passes done, then revisit this issue. ... (check-in: 22905072 user: aku tags: trunk)
02:22
The handling of detached lines of development (floating branches) still had some bugs regarding the linkage to their revisions, especially the first revision on such branches. Fixed the relevant places, added early integrity checks and updated the main checks to handle the situation. ... (check-in: c4003e7b user: aku tags: trunk)
02:21
Removed lots of now dead code. Added a note to the last remaining user of the changeset method 'nextmap'. ... (check-in: 3c0ef2c3 user: aku tags: trunk)
2007-12-04
21:26 Changes to wiki page "To Do List" ... (artifact: 12046e11 user: anonymous)
21:13 Changes to wiki page "Import CVS Repositories" ... (artifact: ea774620 user: anonymous)
21:12 Changes to wiki page "Import CVS Repositories" ... (artifact: 07887bbd user: anonymous)
20:50 Added wiki page "Import CVS Repositories" ... (artifact: 8078e555 user: anonymous)
20:37 Added wiki page "Import CVS Repositories" ... (artifact: 4abbbbdc user: anonymous)
20:25 Changes to wiki page "Import CVS Repositories" ... (artifact: e5b344f6 user: anonymous)
20:24 Changes to wiki page "Import CVS Repositories" ... (artifact: b261253c user: anonymous)
20:05 Changes to wiki page "Import CVS Repositories" ... (artifact: efaf06a5 user: anonymous)
19:54 Added wiki page "To Do List" ... (artifact: a15a465f user: anonymous)
13:05
Generate CGI replies as separate header and body so that the header can be extended during the construction of the body. ... (check-in: 6af8fdc2 user: drh tags: trunk)
04:54
Reworked ComputeLimits in the last breaker pass. Moved the heavy computation of the max predecessor / min successor data down to the sql in the changeset class. ... (check-in: 711e0002 user: aku tags: trunk)
02:47
Add the timeline display preferences page with the ability to turn on and off block markup in timeline comments and to limit the length of timeline comments. ... (check-in: ebb27659 user: drh tags: trunk)
01:55
Fix typos in the "concepts.html" document. ... (check-in: ec1fbd7f user: drh tags: trunk)
01:26
Fix the revert command so that it works from subdirectories. Other minor comment and help-text changes. ... (check-in: 371dd657 user: drh tags: trunk)
2007-12-03
19:17
Send native deltas when cloning. The reduces bandwidth and reduces server load. ... (check-in: 18fbb9c5 user: drh tags: trunk)
19:08
Fix the delta computation on download so that it never tries to delta a file that has the same file as both its parent and its child. ... (check-in: 16fbb59b user: drh tags: trunk)
14:42
Detect delta loops and make at least one member of the loop a phantom. ... (check-in: fb90abe5 user: drh tags: trunk)
00:27
Patch problems with timeline. Need to rethink the whole implementation. ... (check-in: 20553a42 user: drh tags: trunk)
2007-12-02
23:47
Fluff: Renamed state methods use/reading/writing to usedb/use/extend for clarity. Updated all callers. Extended state module with code to dump the SQL statements it receives to a file for analysis. Extended the 'use' declarations of several passes. ... (check-in: e288af39 user: aku tags: trunk)
23:45
Actually put the code for the new pass into the repository. ... (check-in: 060513f2 user: aku tags: trunk)
22:30
Addition to the default style sheet to cover the name/value pairs at the top of the vinfo page. Also a bugfix in the report.c code. ... (check-in: dff17229 user: drh tags: trunk)
20:06
Importer Status...

Speed. This is now mostly acceptable. The one exception is pass 'BreakAllCsetCycles'. The reason is that the limit computation it does for backward branches still uses the inefficient file-level dependency computation. This will be tackled in short order. For the other passes the file spent is 'CsetsDeps' is recouped by the much faster graph setup.

Memory. This seems to be mostly acceptable as well, with the exceptions of 'BreakAllCsetCycles' (again, for reasons see above), and 'InitCsets'. It seems to happen while the pass breaks internal dependencies, but there is no hard data. I have to measure using a memory-debug enabled tclsh. I suspect either the actual internal dependencies, or the pseudo-dependencies. Maybe combined with a bad choice of data structures. Well, measuring first. ... (check-in: e8c374f6 user: aku tags: trunk)

20:04
The performance was still not satisfying, even with faster recomputing of successors. Doing it multiple times (Building the graph in each breaker and sort passes) eats time. Caching in memory blows the memory. Chosen solution: Cache this information in the database.

Created a new pass 'CsetDeps' which is run between 'InitCsets' and 'BreakRevCsetCycles' (i.e. changeset creation and first breaker pass). It computes the changeset dependencies from the file-level dependencies once and saves the result in the state, in the new table 'cssuccessor'. Now the breaker and sort passes can get the information quickly, with virtually no effort. The dependencies are recomputed incrementally when a changeset is split by one of the breaker passes, for its fragments and its predecessors.

The loop check is now trivial, and integrated into the successor computation, with the heavy lifting for the detailed analysis and reporting moved down into the type-dependent SQL queries. The relevant new method is 'loops'. Now that the loop check is incremental the pass based checks have been removed from the integrity module, and the option '--loopcheck' has been eliminated. For paranoia the graph setup and modification code got its loop check reinstated as an assert, redusing the changeset report code.

Renumbered the breaker and sort passes. A number of p... (check-in: 00bf8c19 user: aku tags: trunk)

06:58
Added progress output to the breaking of backward branches. ... (check-in: a437da48 user: aku tags: trunk)
06:57
Finally committing another disabled integrity constraint for changesets, explanations in the comments. ... (check-in: fd93aa26 user: aku tags: trunk)
06:49
Bugfix. Typo. ... (check-in: c7847514 user: aku tags: trunk)
06:18
Modified loop check in cycle breaker to abort immediately on first looped changeset. ... (check-in: 487bb1c6 user: aku tags: trunk)
06:17
Fix table linkage in query, and duplicated conditions :( ... (check-in: f7cca3f0 user: aku tags: trunk)
05:49
Performance bugfix. nextmap/premap can still be performance killers and memory hogs. Moved the computation of sucessor changesets down to the type-dependent code (new methods) and the SQL database, i.e. the C level. In the current setup it was possible that the DB would deliver us millions of file-level dependency pairs which the Tcl level would then reduce to tens of actual changeset dependencies. Tcl did not cope well with that amount of data. Now the reduction happens in the query itself. A concrete example was a branch in the Tcl CVS generating nearly 9 million pairs, which reduced to roughly 200 changeset dependencies. This blew the memory out of the water and the converter ground to a halt, busily swapping. Ok, causes behind us, also added another index on 'csitem(iid)' to speed the search for changesets from the revisions, tags, and branches. ... (check-in: 9c570550 user: aku tags: trunk)
04:55
Bugfix. Have the symbol dependency retrieval commands actually return something. ... (check-in: 71201058 user: aku tags: trunk)
03:49
Deactivated caching of the nextmap/premap data, with the indices the retrieval seems to be fast enough to allow us to reduce mem consumption. Tweaked log output, and sql formatting. ... (check-in: ac026148 user: aku tags: trunk)
03:46
Bugfix in ValidateFragments, tweaked comment a bit, bugfix in SQL, reordered tables in the successor/predecessor queries a bit to show the actual progression of their use. ... (check-in: fbfb5318 user: aku tags: trunk)
03:42
Fixed typo. Grr. ... (check-in: 0a97ad38 user: aku tags: trunk)
03:41
Added progress output to the code loading up the graph to traverse, nodes, and arcs. ... (check-in: 41d41c7b user: aku tags: trunk)
03:40
Added ability to declare indices on tables in the persistent state. Used this to declare indices on critical columns. Slows down the transactions saving changesets, this however is made up when it comes to successor/predecessor retrieval of changesets. ... (check-in: 74854a30 user: aku tags: trunk)
01:02 Changes to wiki page "To Do List" ... (artifact: 12cda7f4 user: aku)
2007-12-01
18:36
Bugfix. Handle free-floating branches (their root revision was removed as unnecessary). ... (check-in: 79c227a9 user: aku tags: trunk)
18:35
Helper updated to changes in state definition. ... (check-in: 5bbc7d4c user: aku tags: trunk)
Previous month ↓