ERROR (MainThread) [homeassistant.components.recorder.core] The recorder backlog queue reached the maximum size of 40000 events; usually, the system is CPU bound, I/O bound, or the database is corrupt due to a disk problem; The recorder will stop recording events to avoid running out of memory
Ce que je comprends, c’est que mon système de suit pas au niveau des entrées/sorties, de fait:
Y-a-t-il moyen de suivre les IO sur PI4 ?
D’une façon générale, je trouve que les I/O sont très mauvaises sur HA PI4 SSD, alors que le hardware semble efficace, par exemple, lors je télécharge une sauvegarde via HA, c’est 10 fois plus lent que lorsque je copie le fichier directement via Samba. il n’y a pas de paramêtres d’optimisation quelque part ?
Y-a-t-il moyen de savoir comment réduire le volume de de données du recorder, ce qui génère le plus d’I/O , du SQL sur MariaDB via phpAdmin ?
2/ Je suis ensuite allé voir les entités qui ramenaient le plus d’enregistrements pour vérifier qu’ils étaient utiles:
SELECT entity_id, count(*) nb_enrgt FROM states where last_updated > STR_TO_DATE('2023-01-10 04:00:00', '%Y-%m-%d %H:%i:%s')
group BY entity_id having nb_enrgt > 10000 order by nb_enrgt desc ;
4/ Je vérifie que mon nombre d’enregistrements par jour est en baisse:
SELECT date(last_updated) date, count(*) Nb_Enrgt FROM states where last_updated > STR_TO_DATE('2023-01-10 04:00:44', '%Y-%m-%d %H:%i:%s')
group BY date desc order by date desc;
Et que les enregistrements supprimés ne sont plus enregistrés à partir d’une certaine date:
SELECT entity_id, date(last_updated) date, count(*) nb_enrgt FROM states where last_updated > STR_TO_DATE('2023-01-27 04:00:00', '%Y-%m-%d %H:%i:%s')
group BY entity_id, date having nb_enrgt > 10000 order by entity_id, date;
Il semble qu’avec la version 2.5.2 de MariaDB, il y ait des modifications dans la base, le champ last_updated n’est plus systématiquement renseigné, mais il existe un champ last_updated_ts (timestamp).
Les requêtes peuvent être modifiées en remplaçant
last_updated
par
from_unixtime(last_updated_ts)
Et comme indiquée, les performances lors de la consultation de l’historique ont été grandement améliorées !