Bonjour,
Je débute avec les triggers sous mysql et je suis confronté au problème suivant.
1 2
| CREATE TRIGGER test_trig BEFORE UPDATE ON phpboost_member FOR EACH ROW SET NEW.user_hobbies=NEW.login;
Query OK, 0 rows affected (0.00 sec) |
update phpboost_member set login='horn2' where user_id=507;
J'obtiens le message d'erreur suivant :
ERROR 1436 (HY000): Thread stack overrun: 6440 bytes used of a 131072 byte stack, and 131072 bytes needed. Use 'mysqld -O thread_stack=#' to specify a bigger stack.
Mon trigger n'a aucun sens en lui même, c'est juste pour faire des tests simples. Il a été adapté à partir de la documentation de MySQL.
mon fichier error.log de MySQL est vide et mysql.log contient:
1 2
| 090818 9:41:54 782 Query CREATE TRIGGER test_trig BEFORE UPDATE ON phpboost_member FOR EACH ROW SET NEW.user_hobbies=NEW.login
090818 9:42:21 782 Query update phpboost_member set login='horn2' where user_id=507 |
Même si l'erreur semble explicite, son apparition n'a aucun sens car pour effectuer ce simple trigger, il n'a pas besoin d'utiliser toute la stack, quelques octets suffisent.
Sur le net j'ai lu qu'il y avait un bug sur certaines version de MySQL à ce propos.
Ai-je mal fait / oublié quelque chose ou y a t'il un vrai problème avec ma version de MySQL?
Merci
Partager