Installazione fallita: impossibile allocare memoria

Ciao,

Sono nuovo a Discourse e ho provato a installarlo per la prima volta. Il primo tentativo non ha nemmeno creato il database e il secondo, dopo (aver cancellato tutto e ricominciato da capo), si lamenta di nuovo:

2022-08-04 18:51:53.698 UTC [41] FATAL:  could not map anonymous shared memory: Cannot allocate memory
2022-08-04 18:51:53.698 UTC [41] HINT:  This error usually means that PostgreSQL's request for a shared memory segment exceeded available memory, swap space, or huge pages. To reduce the request size (currently 1125310464 bytes), reduce PostgreSQL's shared memory usage, perhaps by reducing shared_buffers or max_connections.

C’è un altro errore prima (non so se è rilevante):

I, [2022-08-04T18:51:52.606862 #1]  INFO -- : > socat /dev/null UNIX-CONNECT:/shared/postgres_run/.s.PGSQL.5432 || exit 0 && echo postgres already running stop container ; exit 1
2022/08/04 18:51:52 socat[18] E connect(6, AF=1 "/shared/postgres_run/.s.PGSQL.5432", 36): No such file or directory

La macchina è un server virtuale (non so quale tecnologia) con 4 GB di RAM e 138 GB di spazio libero.

Non sono riuscito a trovare alcun suggerimento adatto qui. Pertanto, hai qualche idea su come risolvere?

Grazie in anticipo
Roland

1 Mi Piace

È l’unica cosa in esecuzione all’interno della VM?

Qual è il risultato di cat /proc/meminfo | grep MemFree?

Hai seguito l’installazione standard ed eseguito discourse-setup? Dovrebbe ottimizzare le impostazioni di memoria per le specifiche della VM, supponendo che soddisfi i requisiti minimi.

Cosa sono db_shared_buffers, unicorn_workers e db_work_mem nel tuo file app.yml?

1 Mi Piace

Sì (eccetto un piccolo script Perl).

MemFree: 758840 kB

Ma più di 3 GB sono per la cache.

Quest’ultimo senza alcuna modifica.

db_shared_buffers: "1024MB"
nessuna voce per unicorn_workers
#db_work_mem: "40MB"
1 Mi Piace

Se hai modificato db_shared_buffers a 512 MB e hai ricostruito l’app:
./launcher rebuild app

Ora sembra molto meglio.

1 Mi Piace