On_mqtt_message raised an Exception : [MySQL] Error code : 23000 (1062). Duplicate entry

Bonjour @jerome6994,

Il existe déjà quelques sujets du même style sur Commu :

Mais on ne nous a pas donné de traces précises, donc si tu veux bien on va regarder ça ensemble.

Déjà, peux-tu m’en dire plus sur ton materiel et tes versions (Jeedom, jMQTT) ?
(RPI 4 - 64Bits : Jeedom 4.1.19 3 RPI3B+ dans ton profil, mais j’imagine que ce n’est pas à jour)
Quels autres plugins utilises-tu ? (snapshot page Santé)
De combien d’équipements et de cmd disposes au total dans Jeedom ? (voir « Résumé domotique »)
Combien as-tu d’équipments jMQTT ? (snapshot page équipements jMQTT)
Tu vois quelque chose d’autre en erreur dans les logs ?

Pas de nouvel ajout d’équipement sur Jeedom? ou de machine sur le réseau ?
Pas de mise à jour de quelque plugin de ce soit ? ou du système ?
Pas de restauration ? de reboot ?
Pas de script ou de modification en live sur la BDD ?
Rien d’autre qui tourne sur la même machine que Jeedom ?
Absolument rien ?

Normalement il suffit de désactiver l’ajout automatique de commandes (regarde la Solution du 1er lien un plus haut).

Avant de planquer le problème sous le tapis, pourrais-tu stp mettre tout jMQTT en débug (plugin et brokers), redémarrer le daemon et prendre des traces de ce qui se vautre ?
Puis m’envoyer tous les logs jMQTT et les logs autres logs pertinents, ici ou en message privé, car ce n’est pas « normal » et il nous faut des traces pour investiguer.

Non, il n’est pas improbable que refaire l’équipement puisse solutionner, mais pas le broker.
On voit bien dans les messages que tu as envoyé que le problème semble lié à une collision entre les commandes :
3219-Garage:ECL_Garage:113:1:Power_Management:Load_error_status et
3219-Buanderie:Impr_3D:status.

Je te suggère chaudement d’utiliser des noms de commande moins longs, car des problèmes existent avec les noms trop longs. La limite était encore à 45 caractères il y a 2 ans, 127 caractères depuis).

Non elle ne l’est pas, mais tu as encore de la marge, car le max est 2147483647, l’id de cmd étant déclaré comme (SIGNED) INT.

Bad

1 « J'aime »