From 4c552cf56bdc4ffcff2503239baa7f3b35cd4674 Mon Sep 17 00:00:00 2001 From: kisfenyo Date: Wed, 30 Sep 2026 16:17:17 +0200 Subject: [PATCH] CHANGELOG + REPORT: immich 768M + v3.2.4 (R-732) Co-Authored-By: Claude Opus 5.5 (1M context) Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS --- CHANGELOG.md | 10 ++++++++++ REPORT.md | 17 +++++++---------- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b4031e0..818a23e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,13 @@ +## immich: the database gets 768M, and v3.2.4 is published with it (2026-09-30, afternoon, R-732) + +- **Cause, measured** (`felhom.eu/documentation/audits/immich-first-start-2026-09-30/A-cause.md`): the first-start geodata + import runs up to 9 concurrent 5000-row INSERTs; the database needs ~400 MB anon + ~170 MB touched shared_buffers (the + image's fixed 512MB). At 512M without swap: 61–104 OOM kills; with swap it survives by swapping. `shared_buffers` 128MB + alone does not help (measured). An update that ships a new geodata file re-runs the import. +- `56c4888`: immich v3.2.2 → v3.2.4 (server + ML), `immich-postgres` 512M → 768M, `mem_limit` 4096M → 4480M, header comment + corrected. Proven with swap off: fresh installs (bench ×2, 9202) 0 kills, anon ≤ 54 %; the step on both venues. + The step carries `files_may_change` (immich's `.immich` markers; R-734). +256 MB per immich box. + ## The last six PostgreSQL apps decided; seven more apps update themselves at night (2026-09-30, day brief) - **PostgreSQL → 18, converted by the box** (the ONLY image move in each commit, written by `upgrade-test.py diff --git a/REPORT.md b/REPORT.md index 669c17c..a368fd4 100644 --- a/REPORT.md +++ b/REPORT.md @@ -1,12 +1,9 @@ -# REPORT — 2026-09-30 (day): the last six PostgreSQL apps decided; seven more within-major steps +# REPORT — 2026-09-30 (late afternoon): immich's first start fixed; v3.2.4 published with it -Architecture: `09-update-architecture.md` §3 decisions 35, 37–39, 42–43; §6.4 part 10; §6.5 (the drill catalog, 9202 only). -Evidence: `felhom.eu/documentation/audits/pg-last-six-2026-09-30/`. Operator report: `felhom.eu/REPORT-pg-last-six-2026-09-30.md`. +Evidence: `felhom.eu/documentation/audits/immich-first-start-2026-09-30/`. Operator report: `felhom.eu/REPORT-immich-first-start-2026-09-30.md`. -- rallly, outline, sparkyfitness → PostgreSQL 18: bench converted (31/42/94 tables equal), box 9202 CONVERTED in 7.1/7.9/9.8 s - through the guarded Update, one undo case each (undone, back on the old major, seed read back). Engine gate ALLOWED on push. -- zipline, adventurelog, immich stay on 16 (their upstreams run 16, 16, 14). -- Three new front-door fixtures; zipline's fixture fixed to its real first-run route. -- Part F: bookstack, kimai, audiobookshelf, n8n, navidrome, grafana, komga — each proven on both venues, one commit each. -- immich v3.2.4 NOT moved: first start at today's pin OOM-killed its database on the bench (R-732). -- Night-updatable apps: 28 (+ nextcloud) in the morning → 31 (+ nextcloud) after. +- Cause: 9 concurrent geodata INSERTs need ~575 MB in the database; 512M only fits with swap. Controls: swap alone, limit alone + flip it; shared_buffers alone does not. +- `56c4888`: v3.2.4 + `immich-postgres` 768M (`mem_limit` 4480M). Fresh installs with swap off: 0 kills on both venues. +- The step: bench proven (10-min watch 0 kills), box 9202 done in 58.5 s, album read back, limit 768M after. +- An installed immich on 3.2.2 gets 768M with its next guarded Update (by hand, or the night leg when a whole copy exists).