Segons diuen aquí podeu provar diversos valors de la variable pool_size fins a trobar un que li agradi.
Cal afegir la variable a config/prod.secrets.exs (no deu ser-hi), per exemple:
Si amb 10 segueix donant l’error provar 15 i així anar pujant fins que ja li agradi. Hi ha un altre variable que també pot ajudar segons diu l’error. En la pàgina que he enllaçat la tenen posada:
queue_target: 5000
També es pot afegir sota de pool_size si és que provant diferents valors de pool_size no es sol·luciona.
Podeu provar de pujar el valor max_connections del propi servidor de base de dades Postgresql. Aquest paràmetre és 100 per defecte però el podeu provar de pujar a 150 o 200 si cal. El trobareu en el fitxer de configuració de Postgresql. Per exemple, a Ubuntu Server 22.04 el fitxer és a:
/etc/postgresql/14/main/postgresql.conf
Si canvieu el valor, cal reiniciar Postgresql.
Per a mastodont.cat el vaig haver de pujar a 350:
Holi! No sabia que es podia parlar del tema per aquí x)
Un dubte, quins son els recursos del servidor cuan cau? Pot ser que es quedi sense memoria?
Normalment el pool de conexions sol estar associat a l’ús de la memoria. Les configuracions que mencioneu son per a fer que la base de dades pugui fer servir tots els recursos a la seva disposició, pero si realmente ja fa servir tots, significa que el servidor s’ha quedat petit.
Em sembla que tot el que heu dit te molt de sentit. No tinc experiencia particular amb postgres, només en general amb BBDD, pero si puc fer alguna cosa digueu-m’he. Si em voleu donar accés puc donar un cop d’ull en general, sinó no passa res x)
Si ja heu modificat els valors de les conexións com diu l’ @spla i segueix passant el problema, jo miraria el tema de la memoria. Si el proveidor no dona algún sistema de monitorització de memoria, podem fer un script cutre que apunti tot en un fitxer i el podem consultar cuan torni a fallar.
En la mateixa configuració de postgres?
Sip. Tot i així, menjará memoria, pot arribar a un punt en el que faci que pleroma en si tingui menys recursos dels que necessita. (si está tot al mateix servidor, sinó res)
Quina casualitat! Deu ser un error prou genèric de desconnexió…
Per cert, porto una estona utilitzant la instància i no dóna els errors que donava. A part que sembla que ja s’ha posat al dia de les publicacions.
No he tingut temps d’incorporar lo de les connexions màximes, així que potser hi té a veure la resta de paràmetres de la base de dades que vaig tocar ahir.
Tot i això no estic massa convençut, el que tarda més en aparèixer (uns quants segons, es fa llarg) són les notificacions.
El que interpreto és que al no executar l’ordre en l’entorn de producció (MIX_ENV=prod) ho fa en l’entorn de desenvolupament per defecte, entorn que no té la configuració de com connectar amb la base de dades i dona aquest error no massa clar…
Ja no dóna l’error del pool_size al servidor (o com a mínim és molt puntual).
Ja no dóna l’error al frontend (Error 500) que sortia amb freqüència tot i funcionar.
Continua carregant les notificacions amb molta lentitud, fet que em sugereix que potser no hi té res a veure.
@drymer He revisat i no tinc accés a la interfície del proveidor. Només en @tuttle la té (no és gaire positiu) i ara és fora. Així que haurem d’esperar. Si t’interessa donar un cop de mà en afinar la configuració, encantat de donar-te accés si els sembla bé al @tuttle i la @titi (jo crec que no hi haurà problema).