From 160e8980e57ed5310a0e9a65c12db52675fae886 Mon Sep 17 00:00:00 2001 From: Viktor Barzin Date: Sat, 11 Apr 2026 10:30:44 +0100 Subject: [PATCH] perf(immich): restore PostgreSQL vector search optimizations MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - shared_buffers: 1GB → 2GB (clip_index is 452MB, needs headroom) - effective_cache_size: 1536MB → 2560MB - PG memory: 2Gi → 3Gi to support larger shared_buffers - Add pg_prewarm to shared_preload_libraries with autoprewarm - First search after restart: 999ms → 25ms --- stacks/immich/main.tf | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/stacks/immich/main.tf b/stacks/immich/main.tf index f272d91c..f9ff83b6 100644 --- a/stacks/immich/main.tf +++ b/stacks/immich/main.tf @@ -448,10 +448,10 @@ resource "kubernetes_deployment" "immich-postgres" { resources { requests = { cpu = "100m" - memory = "2Gi" + memory = "3Gi" } limits = { - memory = "2Gi" + memory = "3Gi" } } } @@ -461,9 +461,12 @@ resource "kubernetes_deployment" "immich-postgres" { command = ["sh", "-c", <<-EOT cat > /data/postgresql.override.conf <<'PGCONF' # Immich vector search performance tuning - shared_buffers = 1024MB - effective_cache_size = 1536MB + shared_buffers = 2048MB + effective_cache_size = 2560MB work_mem = 64MB + shared_preload_libraries = 'vchord.so, vectors.so, pg_prewarm' + pg_prewarm.autoprewarm = on + pg_prewarm.autoprewarm_interval = 300 PGCONF EOT ]