OXYGENHUB

Git import: merges of long-lived branches rebuild thousands of file graphs from history issue #96 open andymccall opened this · 0 comments

andymccall

The fresh VS Code import (issue #88 fixed) ran at about 24,000 commits an hour at first and about 3,500 an hour by 64,000 commits; stopped 2026-10-10 at 66,500 to fix this.

A trace of 1,333 commits after 31,000 (OXY_IMPORT_TRACE): 1,136 ordinary commits on a kept base took 33 ms each; 88 merges on a kept base 1.9 s each; 3 merges on a rebuilt base 44 s each (one: merged=28,099 need=11,575, 68 s); 30 single-parent commits on a rebuilt base 1.9 s each. Merges and rebuilt bases were 87% of the time. A file graph is built by replaying its deferred edits since the last checkpoint (up to 13,135 for one file, 591,000 deferred in all), and graphs shed to bound memory are built again later.

Aim: a merge or a rebuilt base costs what the files it touches cost, not their whole history; then resume the import (oxy git recover, oxy git fetch) and verify it. refs issue #81

andymccall referenced by change aedfe465b611 on main ·

andymccall set labels performance ·