Site: timeline hydration reads one packmap shard per item

closed
Max Rakhimov · 2026-09-28 · 67451e5d7d3f · edited · issue

Fifty timeline rows cost about 45 packmap shard reads after paint: each item's body is one loose-object read, and each sha lands in its own two-hex packmap shard. The shard promises are already memoized per context, so the reads are distinct shards, not repeats. Candidate fix: hydrate timeline card bodies from the items bodies corpus (a few shard reads for the whole window) instead of per-item object reads; weigh what the bodies corpus carries against what cards render, and the parity rule.

edits
#commit:67451e5d7d3f@gitmsg/pm
labels
kind/feature, area/site
Comments (1)

↩ Max Rakhimov · 2026-10-01

Fixed on main by #commit:19fab013f89b: hydrateItems fills hollow commits from the bodies corpus first, so a fifty-row timeline costs a few shard reads in place of one object read per card, and the object read stays for every miss. The timeline's request-budget ceiling drops from 85 to 50. The review added one fix: hydration and search now share one read per bodies document. The uncapped older-shard drain is accepted and recorded in the commit body.