Re: Reponse lente de postgres
Bonjour Jean Paul,
- la version que vous utilisez de PostgreSQL ?
Nous avons Postgresql 8.0.13
- la liste de tous les paramètres du fichier postgresql.conf
qui ne sont pas commentés
max_connections = 500
shared_buffers = 2000
work_mem = 512
maintenance_work_mem = 131072
deadlock_timeout = 1000 # in milliseconds
max_locks_per_transaction = 64
log_min_messages = notice
log_min_error_statement = panic
La machine semble correcte, sans plus. Maintenant, je pressens soit un
problème de configuration du serveur, soit l'absence de procédures de
maintenance, soit un problème au niveau du code (utilisez-vous bien des
BEGIN... END dans le code? Utilisez-vous des LOCK explicites, etc...)...
Pour la maintenance je fais un vacuum tous les jours sur crontab. La taille
de nos 3 bases de données est actuellement de 40 Go.
Notre verouillage : LOCK FOR UPDATE, les autres je ne sais pas.
J'attends le prochain blocage et je vous enverrai la reponse au requette.
Merci.
Hajatiana RAHOLIARIJAONA Administrateur réseaux et systèmes du centre de
traitement SAISIE.MG administrateur(at)saisie(dot)mg
----- Original Message -----
From: "Jean-Paul Argudo" <jean-paul(at)argudo(dot)org>
To: "Hajatiana RAHOLIARIJAONA" <administrateur(at)saisie(dot)mg>
Cc: <pgsql-fr-generale(at)postgresql(dot)org>
Sent: Monday, July 30, 2007 6:02 PM
Subject: Re: [pgsql-fr-generale] Reponse lente de postgres
Bonjour Hajatiana,
Pourriez vous m'aider à resoudre ce pb?
Oui, pour cela essayez de nous poster sur la liste:
- la version que vous utilisez de PostgreSQL ?
J'ai 400 à 500 connexions avec 2 DELL poweredge 2850, 8go de
ram en cluster, postgresql est aussi en clustering avec RHCS
sur RHEL4 AS.
La machine semble correcte, sans plus. Maintenant, je pressens soit un
problème de configuration du serveur, soit l'absence de procédures de
maintenance, soit un problème au niveau du code (utilisez-vous bien des
BEGIN... END dans le code? Utilisez-vous des LOCK explicites, etc...)...
Soit tous ces problèmes en même temps.
Que donne l'exécution de la requête suivante, lorsque vous constatez les
LOCKs dont vous parlez?
SELECT
procpid,
usename,
(now() - query_start) as age,
c.relname,
l.mode,
l.granted
FROM
pg_stat_activity a
LEFT OUTER JOIN pg_locks l
ON (a.procpid = l.pid)
LEFT OUTER JOIN pg_class c
ON (l.relation = c.oid)
WHERE
c.relname !~ '^pg'
ORDER BY
pid;
Merci pour vos précisions,
--
Jean-Paul Argudo
www.dalibo.com
www.PostgreSQLFr.org
---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster
Home |
Main Index |
Thread Index