Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
#1 20/02/2020 17:53:51
- odn62
- Membre
Equivalent Windows de ulimit pour augmenter max_stack_depth
Bonjour
J'utilise un Postgres sur un Windows
J'ai cette erreur
ERROR> 18/02/2020 00:14:07.598 Database disconnected. Try reconnecting in 10000ms...
ERROR> 18/02/2020 00:14:17.661 Error during the query execution : org.postgresql.util.PSQLException: ERREUR: dépassement de limite (en profondeur) de la pile
Indice: Augmenter le paramètre max_stack_depth (actuellement 2048 Ko) après vous
être assurée la limite de profondeur de la pile de la plateforme est adéquate.
J'ai donc augmenté dans postresql.conf avec max_stack_depth = 20MB
et en redémarrant le service, j'ai cette erreur :
LOG: valeur invalide pour le paramètre " max_stack_depth " : 20480
DETAIL: " max_stack_depth " ne doit pas dépasser 3584 Ko.
ASTUCE : Augmenter la limite de profondeur de la pile sur votre plateforme via
" ulimit -s " ou l'équivalent local.
Le problème c'est que ulimit c'est une commande Linux et je ne vois pas comment faire sur Windows.
Est-ce que quelqu'un sais comment modifier la profondeur de pile sur Windows?
Cordialement
Eric
Hors ligne
#2 20/02/2020 18:21:01
- pifor
- Membre
Re : Equivalent Windows de ulimit pour augmenter max_stack_depth
Il faudrait essayer d'utiliser l'outil EDITBIN livré avec Visual Studio d'après Atalsoft.
J'ai trouvé un message sur les listes de distribution PostgreSQL qui référence cet outil en 2005:message de 2005
PS. Pour ce type d'erreur il faut vraiment utiliser le forum StackOverflow
Dernière modification par pifor (20/02/2020 18:23:08)
Pierre
Hors ligne
#3 20/02/2020 19:48:58
- rjuju
- Administrateur
Re : Equivalent Windows de ulimit pour augmenter max_stack_depth
Il n'est pas nécessaire de redémarrer postgres pour changer le paramètre max_stack_depth :
=# show max_stack_depth ;
max_stack_depth
-----------------
2MB
(1 row)
=# set max_stack_depth = '5MB';
SET
=# show max_stack_depth ;
max_stack_depth
-----------------
5MB
(1 row)
. Vous pouvez donc essayer différentes valeurs pour voir si cela corrige votre problème. Cela dit, quand ce genre de problème arrive il s'agit plus souvent d'une requête ou d'un traitement mal écrit. Quelle requête effectuez-vous pour arriver à cette erreur ?
Julien.
https://rjuju.github.io/
Hors ligne
#4 21/02/2020 10:02:52
- odn62
- Membre
Re : Equivalent Windows de ulimit pour augmenter max_stack_depth
Bonjour
Il n'est pas nécessaire de redémarrer postgres pour changer le paramètre max_stack_depth :
=# show max_stack_depth ; max_stack_depth ----------------- 2MB (1 row) =# set max_stack_depth = '5MB'; SET =# show max_stack_depth ; max_stack_depth ----------------- 5MB (1 row)
. Vous pouvez donc essayer différentes valeurs pour voir si cela corrige votre problème. Cela dit, quand ce genre de problème arrive il s'agit plus souvent d'une requête ou d'un traitement mal écrit. Quelle requête effectuez-vous pour arriver à cette erreur ?
J'ai essayé de modifier max_stack_depth comme ci-dessus
set max_stack_depth = '5MB';
mais j'obtiens la même erreur
ERREUR: valeur invalide pour le paramètre « max_stack_depth » : 5120
DETAIL: « max_stack_depth » ne doit pas dépasser 3584 Ko.
HINT: Augmenter la limite de profondeur de la pile sur votre plateforme via
« ulimit -s » ou l'équivalent local.
Pour ce qui est d'une requête ou d'un traitement mal écrit, je ne peux pas intervenir dessus car cela vient d'un application que nous avons acheté.
L'erreur arrive de temps en temps et cela nous oblige redémarrer l'application pour débloquer les utilisateur.
Nous avons contacter le support de l'application et comme nous ne savons pas quel est l'action qui produit l'erreur pour la reproduire, le support m'a demandé d'augmenter le max_stack_depth.
D'où ma demande.
Hors ligne
#5 21/02/2020 10:19:43
- odn62
- Membre
Re : Equivalent Windows de ulimit pour augmenter max_stack_depth
bonjour
Il faudrait essayer d'utiliser l'outil EDITBIN livré avec Visual Studio d'après Atalsoft.
J'ai trouvé un message sur les listes de distribution PostgreSQL qui référence cet outil en 2005:message de 2005
PS. Pour ce type d'erreur il faut vraiment utiliser le forum StackOverflow
Je n'ai pas Visual Studio sur mon poste, mais j'ai trouvé une solution qui doit être identique à ce que fait EDITBIN pour modifier la stack dans les exécutables.
PE TOOLS https://github.com/petoolse/petools#pe-editor
et voici le doc qui m'a inspiré cette outils pour augmenter la pile d'exécution d'un executable:
https://docplayer.fr/23486532-Microsoft … ution.html
J'ai testé sur les exécutables : pg_ctl.exe et postgres.exe mais cela rien changé, j'ai toujours 3584 Ko en valeur max.
@+
Eric
Hors ligne
#6 21/02/2020 20:15:07
- rjuju
- Administrateur
Re : Equivalent Windows de ulimit pour augmenter max_stack_depth
ERREUR: valeur invalide pour le paramètre « max_stack_depth » : 5120 DETAIL: « max_stack_depth » ne doit pas dépasser 3584 Ko.
Et bien positionnez max_stack_depth à 3583 ou 3584 et priez pour que cela suffise, ou que le support corrige le problème.
Julien.
https://rjuju.github.io/
Hors ligne