Le code d'erreur MySQL 1436, correspondant à ER_STACK_OVERRUN_NEED_MORE, indique un problème de dépassement de pile de threads . Cette erreur se produit lorsque l'utilisation de la pile d'un thread MySQL dépasse la limite définie par la variable serveur 'thread_stack'.
Le message d'erreur fournit des détails sur la quantité de pile utilisée et la taille limite de la pile. Par exemple, le message « 1436 - Dépassement de pile de threads : 6 136 octets utilisés sur une pile de 131 072 octets et 128 000 octets nécessaires » indique que 6 136 octets de mémoire de pile ont été utilisés sur une taille totale disponible de 131 072 octets, mais que le thread a nécessité un 128 000 supplémentaires bytes.
Une cause fréquente de cette erreur est lorsque la variable 'thread_stack' est définie sur une valeur faible, soit dans le fichier de configuration MySQL (my.cnf), soit via une modification dynamique. à l'aide d'une commande SET THREAD STACK.
La documentation MySQL indique que la valeur par défaut pour 'thread_stack' vaut 256 Ko (plateformes 64 bits) ou 192 Ko (plateformes 32 bits). Cependant, ces valeurs peuvent être modifiées lors de la compilation ou de l'exécution.
Pour résoudre cette erreur, vous pouvez augmenter la valeur de 'thread_stack' dans le fichier de configuration MySQL ou en utilisant une commande SET THREAD STACK . N'oubliez pas de redémarrer MySQL après avoir apporté des modifications au fichier de configuration.
De plus, revoir le code et réduire l'utilisation de la pile du thread qui déclenche l'erreur peut aider à éviter ce problème à l'avenir.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!