Roadmap 0.9, Fixes

FX.135 Website: /admin/library (3.8 s) and /admin/analytics (1.7 s) staff pages were slow

  • Fix
  • Built · Live

Found with bin/admin-perf.php while fixing the dashboard (FX.134), 2026-11-08.

/admin/library: LibraryVersions::possibleDuplicates joined every version to every other version with the same source hash. The Library's generated collections share one source file across 250 items of one maker, so the self-join compared about 6 million pairs to find nothing (3.8 s). The source branch now starts from source hashes held by versions of two or more owners (a pair with different owners needs one), which is the same answer: 365 ms.

/admin/analytics: the browser-language list (Analytics::languages) was the one figure counted live on every load, 1.7 s over session_activity; it is now part of the stored report (Analytics::report carries languages), counted nightly by bin/warm-analytics.php like the rest. Loads in ~60 ms.

Tests: bin/test-library-admin.php, bin/test-admin.php (one failure in the message search is other sessions' uncommitted work on Contact.php, not this).

Add a comment

Community comments

No comments yet

Add detail as we go: how you would use it, files or steps that show the problem, what other programs do. The team reads every comment.

Sign in or create a free account to add a comment.