banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Mon 20 May 2019 11:02

jlavaure
Participant assidu
Date d'inscription: 20 Apr 2013
Messages: 203

QGIS 3 / Postgres: Erreur connexion max

Bonjour à toute la communauté,

Je suis le responsable SIG d'une entreprise de 20 personnes.

Vous avons migré vers QGIS3 il y a plusieurs mois (quand la 3.4 est devenu LTR).

Depuis nous rencontrons régulièrement un message d'erreur que nous n'avions pas sous QGIS 2.18.

Le message d'erreur stipule que le nombre maximum de connexion postgres a été atteint, soit 100. Ceci alors que nous sommes une dizaine à utiliser QGIS.

J'ai remarqué que les sessions QGIS ne se fermaient pas sur postgres (par exemple il y en a plusieurs de la semaine dernière). Résultat, nous devons fermer manuellement les sessions sur la page d'administration postgres.

Je ne sais pas si c'est lié à QGIS 3.4, mais chaque semaine c'est la même histoire.

Est-ce-que certain ont eu le même problème ? Sinon des solutions a envisager pour que les connexions postgres se ferment à la fermeture de QGIS ?

Merci d'avance pour votre retour,

J

Hors ligne

 

#2 Mon 20 May 2019 11:19

PA
Membre
Lieu: Paris
Date d'inscription: 5 Sep 2005
Messages: 3259
Site web

Re: QGIS 3 / Postgres: Erreur connexion max

Bonjour,

Dans un premier temps, vous pouvez augmenter le nombre de connexions simultanées dans la conf de postgresql
https://www.postgresql.org/docs/current … ction.html

Mais c'est juste du contournement.

Vous pouvez aussi gérer vos pools connexions avec des outils annexes comme PgBouncer ou PgPool. De quoi peut-être aussi investiguer plus en détail.


Pierre-André Le Ny
Modérateur QGIS, Données, Coin de l'OpenSource
Aidez l'association GeoRezo !

Hors ligne

 

#3 Mon 20 May 2019 11:27

jlavaure
Participant assidu
Date d'inscription: 20 Apr 2013
Messages: 203

Re: QGIS 3 / Postgres: Erreur connexion max

@PA :

On a une configuration particulière, le serveur postgres est stocké sur un NAS ou seul un informatition peut accéder aux fichiers de conf en SSH. Mais le NAS remet à zéro le paramétrage à 100, donc pas possible de contourner le problème de la sorte.

Je vais regarder PgBouncer et PgPool.

Merci.

D'autre proposition sinon ?

J.

Hors ligne

 

#4 Mon 20 May 2019 11:29

tumasgiu
Membre
Lieu: Ajaccio
Date d'inscription: 5 Jul 2010
Messages: 1160

Re: QGIS 3 / Postgres: Erreur connexion max

Salut,

il y avait un ticket similaire qui concernait les connexions initiées par le dbmanager
qui a été clôturé il y a 5
https://issues.qgis.org/issues/7679

Est ce que vous utilisez des plugins ou des scripts ?
Peut être que cela peut venir de là.

Quel est l'état des connexions que vous devez fermer manuellement ?
Si leur état est IDLE, et que vous avez un serveur PostgreSQL >= 9.6,
vous pouvez régler l'option idle_in_transaction_session_timeout
pour clore automatiquement ces connexions.
Sinon vous pouvez installer un proxy du genre pgBouncer
entre vos clients QGIS et le serveur PostgreSQL pour faire la même chose
(pgBouncer vous permettrait aussi de pooler vos connexions).

Dernière modification par tumasgiu (Mon 20 May 2019 11:33)

Hors ligne

 

#5 Mon 20 May 2019 11:39

jlavaure
Participant assidu
Date d'inscription: 20 Apr 2013
Messages: 203

Re: QGIS 3 / Postgres: Erreur connexion max

@tumasgiu :

Non rien de particulier à noter niveau plugin ou scripts.

Je vais regarder le ticket, on sait jamais.

En effet toutes les connexions sont en état IDLE et nous avons postgres 10.5.

L'option idle_in_transaction_session_timeout est réglée à 0 ms

Ce paramètre devrait fonctionner non ? Pourtant les sessions ne se ferment pas....

Hors ligne

 

#6 Mon 20 May 2019 11:48

tumasgiu
Membre
Lieu: Ajaccio
Date d'inscription: 5 Jul 2010
Messages: 1160

Re: QGIS 3 / Postgres: Erreur connexion max

Non, la valeur 0 a pour effet de désactiver l'option.
Il faut indiquer une valeur, en milliseconde.

Dernière modification par tumasgiu (Mon 20 May 2019 11:48)

Hors ligne

 

#7 Mon 20 May 2019 11:52

jlavaure
Participant assidu
Date d'inscription: 20 Apr 2013
Messages: 203

Re: QGIS 3 / Postgres: Erreur connexion max

Je vais essayer ça, que me conseillez vous comme valeur ?
24 heures = 86400000 millisecondes

Cela pourrait être pas mal non ?

Hors ligne

 

#8 Mon 20 May 2019 11:52

tumasgiu
Membre
Lieu: Ajaccio
Date d'inscription: 5 Jul 2010
Messages: 1160

Re: QGIS 3 / Postgres: Erreur connexion max

Et Il faut redemarrer le serveur postgresql pour
que les modifications soient effectives.

Hors ligne

 

#9 Mon 20 May 2019 12:05

tumasgiu
Membre
Lieu: Ajaccio
Date d'inscription: 5 Jul 2010
Messages: 1160

Re: QGIS 3 / Postgres: Erreur connexion max

Pour la valeur, cela dépend de la vitesse
à laquelle les connexions s'accumulent.
Au vu de ce que vous avez décrit je me dis qu'une heure
ou deux serait suffisant.

Il faut bien comprendre que PostgreSQL ne fermera
que les connections inactives pendant un laps de temps
égal à la valeur que vous aurez indiqué.
QGIS de mémoire ne ferme pas les connexions, même
si aucun traitement n'est en cours, donc,
au pire la connexion d'un des clients sera perdue,
mais ce n'est pas grave car QGIS se reconnecte automatiquement
sans crasher.

Sinon, apparemment vous pouvez aussi déclarer
la valeur en mode texte, exemple "1 hour".
C'est plus lisible que 3600000. smile

Dernière modification par tumasgiu (Mon 20 May 2019 12:06)

Hors ligne

 

#10 Mon 20 May 2019 12:20

jlavaure
Participant assidu
Date d'inscription: 20 Apr 2013
Messages: 203

Re: QGIS 3 / Postgres: Erreur connexion max

Merci tumasgiu ! Je vais essayer de modifier ce paramétrage.

Je ferais un retour si ça marche smile

J.

Hors ligne

 

#11 Wed 29 May 2019 15:57

jlavaure
Participant assidu
Date d'inscription: 20 Apr 2013
Messages: 203

Re: QGIS 3 / Postgres: Erreur connexion max

@tumasgiu :

Bon malgré le changement de la valeur idle_in_transaction_session_timeout ça ne ferme toujours pas les sessions ... je vais essayer avec "1 hour" au lieu de "86400000 ms".

Hors ligne

 

#12 Wed 29 May 2019 22:10

francis_31
Participant actif
Date d'inscription: 24 Nov 2010
Messages: 88

Re: QGIS 3 / Postgres: Erreur connexion max

Bonsoir,

sur un postgresql 9.6 avec utilisation de QGIS par trois utilisateurs (utilisation fréquente) nous ne rencontrons pas ce problème.
Sur les trois postes deux sont en version 3.4 et un en version 3.6.
La 3.4 est également installée depuis qu'elle est devenu LTR, même un peu avant.

J'ai pas vérifié le paramètre max_connexion.

Vous l'avez déjà fait mais oui à ma connaissance la modification du fichier postgresql .conf demande le redémarrage du service pour prise en compte, pour le fichier pg_hba.conf il y a une commande qui offre la possibilité de forcer la re-lecture du fichier sans redémarrer le service : pg_ctl en mode reload.

Hors ligne

 

Pied de page des forums

Powered by FluxBB