Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
Pages : 1
#1 24/09/2017 20:41:04
- sihem_info
- Membre
status IDLE
bonjour
serai t'il nécessaire de faire un pg_terminate_backend(procpid) pour un SPID en statu "idle"
si je lance cette requête pour vérifier les look j'aurai que des requête avec un status idle
Dans quel cas je doit tuer ces procesus
SELECT pid, age(query_start, clock_timestamp()), usename, query
FROM pg_stat_activity
WHERE query NOT ILIKE '%pg_stat_activity%'
ORDER BY query_start desc;
cordialement
Dernière modification par sihem_info (24/09/2017 20:43:11)
Hors ligne
#2 24/09/2017 21:15:55
- gleu
- Administrateur
Re : status IDLE
Jamais. Pourquoi voulez-vous les tuer ?
Guillaume.
Hors ligne
#3 25/09/2017 13:42:18
- sihem_info
- Membre
Re : status IDLE
j'ai comme résultat du requête des processus qui ont plus de 2Jour avec ce status <IDLE> in transaction
procpid | age | usename | current_query
---------+--------------------------+----------+-----------------------------------------------------
46655 | -2 days -22:06:43.193043 | cair2 | <IDLE> in transaction
46652 | -2 days -22:06:44.196716 | cair2 | <IDLE> in transaction
(2 lignes)
Dernière modification par sihem_info (25/09/2017 13:42:38)
Hors ligne
#4 25/09/2017 13:55:36
- ruizsebastien
- Membre
Re : status IDLE
Bonjour,
Je crois qu'il faut plutôt voir du côté applicatif (l'application libère t'elle correctement les sessions, y a t'il un problème de conf au niveau des pools de connexion (s'il y en a) des fonctions ou des utilisateurs n'ont-ils pas oublié un END dans le code ou dans leurs commandes, etc...)
Cordialement,
Cordialement,
Sébastien.
Hors ligne
#5 25/09/2017 17:54:14
- sihem_info
- Membre
Re : status IDLE
merci Sébastien.
pour votre réponse juste une dernière Question SVP
comment je peux récupérer le syntaxe du Query en question
pour info je suis sous la version 9.2
merci
Hors ligne
#6 25/09/2017 17:54:22
- gleu
- Administrateur
Re : status IDLE
En fait, ces deux sessions ont débuté une transaction, qu'elles n'ont pas terminé. Le mieux est en effet de les tuer avec pg_terminate_backend, mais il faut aussi comprendre pourquoi, comme le dit Sébastien, l'application ou le driver n'a pas exécuté un COMMIT ou un ROLLBACK en fin de transaction.
Guillaume.
Hors ligne
#7 25/09/2017 17:54:58
- gleu
- Administrateur
Re : status IDLE
De quel requête parlez vous ?
Guillaume.
Hors ligne
#8 26/09/2017 11:56:05
- sihem_info
- Membre
Re : status IDLE
bonjour
Si je fait un pg_cancel_backend( procpid)
faut il beaucoup du temps pour qu'il soit annuler
car si j'ai fait ça sur les deux processus 46655 et 46652 et il ne sont pas annuler immédiatement
cordialement
Hors ligne
#9 26/09/2017 15:22:17
- gleu
- Administrateur
Re : status IDLE
Normalement, c'est immédiat pour un processus actif.
Guillaume.
Hors ligne
Pages : 1