Erreur d'archivage des historiques - soucis requête

Bonjour,

Depuis plusieurs jours (je pense depuis mon passage sur Debian Buster, et une version de MySQL plus récente et moins permissive), j’ai un soucis d’archivage des logs.

Le message d’erreur :

Erreur l’archivage des historiques : {« cmd_id »:« 492 »,« archivePackage »:3600,« archiveTime »:« 2021-01-07 03:00:05 »} => [MySQL] Error code : 22003 (1264). Out of range value for column ‹ (null) › at row 1 : REPLACE INTO historyArch(cmd_id,datetime,value) SELECT cmd_id,MIN(datetime),avg(CAST(value AS DECIMAL(12,2))) as value FROM history WHERE datetime

En vérifiant, il s’agit d’un virtuel, qui me remonte mon index compteur - à l’instant : 11977713000

La requête d’archivage fait un CAST sur un décimal de 10+2 chiffres après la virgule, hors là on dépasse cette valeur.
J’ai vérifié la structure de la table d’archivage : on est sur un varchar(127) - elle peut donc encaisser bien plus que ça.

Serait-il possible de corriger cette requête pour soit éviter le CAST, soit le même un peu plus large ?

Pour la remonté d’alerte, c’est plutôt une bonne chose en fait, la version précédente de MySQL mettait « juste » la valeur maximum (alors que maintenant il retourne l’erreur mentionnée plus haut) :

| 492 | 2020-11-10 19:00:00 | 9998013989.583333333 |
| 492 | 2020-11-10 20:00:00 | 9999676281.245833333 |
| 492 | 2020-11-10 21:00:00 | 9999999999.990000000 |
| 492 | 2020-11-10 22:00:00 | 9999999999.990000000 |
| 492 | 2020-11-10 23:00:00 | 9999999999.990000000 |