Repository navigation
v0.15.2
Performance, follow-ups from the v0.15.1 review:
- Branch
/headspages looked up the branch's base namespace once per name that reads
through. A read transaction now reads each namespace row once: a branch page takes 27–33 ms
instead of 161–164 ms on Postgres (a branch of a branch, 34–38 ms instead of 288–297), and
20–29 ms instead of 36–38 ms on SQLite. - The index's
-fetch-concurrencynow limits fetches across all followed namespaces
and branches together, not per namespace:-ns a,b,csent up to 24 GETs at once to the
core (whose Postgres pool has 16 connections) and now sends at most 8. It must be at least
1. - The index reuses its connections to the core: its client keeps an idle connection per
fetch (newclient.WithIdleConns), wherehttp.DefaultTransportkept 2 and redialled the
rest after every page. Catching up 3 × 2,000 documents opened 8–12 connections instead of
1,500–2,100, at the same speed.
Full Changelog: v0.15.1...v0.15.2