Gladys HS, besoin d'aide!

Bonsoir à tous,

Je me retrouve sans assistant ce soir : Gladys ne démarre plus, sans trop que je sache pourquoi ? J’ai ces traces dans les logs :

2025-10-05T20:02:51+0200 index.js:16 (process.) [Error: Connection Error: Connection was never established or has been closed already] {
errno: -1,
code: ‹ DUCKDB_NODEJS_ERROR ›,
errorType: ‹ Connection ›
}

Auriez-vous des pistes et idées permettant de corriger ?

Merci par avance,
Belle soirée,
Jean

Salut @jean_bruder, tu as le reste des logs ?

Ce log indique que DuckDB a fermé la connexion avec le fichier sur le disque, mais à mon avis ce n’est pas le souci de base dans ton cas.

Bonjour @pierre-gilles

Peux-tu me rappeler comment te fournir l’intégralité du log de support ?

Merci,
Jean

Tu peux faire :

docker logs gladys

Si tu veux restreindre aux 1000 dernières logs par exemple :

docker logs gladys --tail=1000

Bonsoir @pierre-gilles

Les seules lignes dont je dispose sont les suivantes lorsque j’affiche les logs via docker-compose logs gladys :

Gladys | 2025-10-06T23:17:08+0200 index.js:15 (process.) unhandledRejection catched: Promise {
Gladys | [Error: Connection Error: Connection was never established or has been closed already] {
Gladys | errno: -1,
Gladys | code: ‹ DUCKDB_NODEJS_ERROR ›,
Gladys | errorType: ‹ Connection ›
Gladys | }
Gladys | }
Gladys | 2025-10-06T23:17:08+0200 index.js:16 (process.) [Error: Connection Error: Connection was never established or has been closed already] {
Gladys | errno: -1,
Gladys | code: ‹ DUCKDB_NODEJS_ERROR ›,
Gladys | errorType: ‹ Connection ›
Gladys | }
Gladys | 2025-10-06T23:17:38+0200 index.js:15 (process.) unhandledRejection catched: Promise {
Gladys | [Error: Connection Error: Connection was never established or has been closed already] {
Gladys | errno: -1,
Gladys | code: ‹ DUCKDB_NODEJS_ERROR ›,
Gladys | errorType: ‹ Connection ›
Gladys | }
Gladys | }
Gladys | 2025-10-06T23:17:38+0200 index.js:16 (process.) [Error: Connection Error: Connection was never established or has been closed already] {
Gladys | errno: -1,
Gladys | code: ‹ DUCKDB_NODEJS_ERROR ›,
Gladys | errorType: ‹ Connection ›
Gladys | }

Cela peut-il aider ? Merci d’avance,
Jean

Bonsoir @pierre-gilles

Je viens de corriger l’erreur par une recréation du fichier gladys-production.duckdb.wal au démarrage de Gladys. Bon, j’ai perdu l’historique d’état des capteurs, dommage pour les statistiques de températures et d’hygrométrie :wink:

Désolé pour le dérangement/bruit …

Belle soirée,
Jean

Tu es sur quel type de matériel pour faire tourner Gladys ?

À moins que tu aies fait une mauvaise manipulation, ce n’est pas normal d’avoir des problèmes de base de données comme ça.

Bonjour @pierre-gilles

Je pense que cela a fait suite à une coupure de courant survenue en début de semaine … Forcément, ça n’aide pas …

DuckDB est une base de données ACID compliant, donc c’est censé fonctionner correctement même avec une coupure de courant qui interrompt ton système en cours d’utilisation.

En revanche, si tu utilises un disque qui peut être corrompu dans ce genre de situation (type micro-SD), alors DuckDB ne peut rien y faire.

Tu es bien sur un mini-PC avec un disque SSD fiable ?

Bonsoir @pierre-gilles

Gladys (et mon écosystème domotique) tourne sur un Rock64 (équivalent de RPi 4), hébergé sur un SSD. Je vais fouiller au niveau des logs disponibles, mais vu que c’est solutionné, je ne vais pas perdre trop de temps …

Belle soirée,
Jean

Je crois qu’il va falloir que tu investisses dans un onduleur ou un Hat avec batterie pour ton Rock64 pour ne plus avoir de pb de ce type lors de coupure de courant.

1 « J'aime »

Normalement, pas besoin de tout ça, Gladys utilise des technos robustes (SQLite et DuckDB) qui sont toutes les deux ACID compliant (en français → Propriétés ACID — Wikipédia).

Une coupure de courant n’a normalement pas d’impact sur la fiabilité de ces systèmes de base de données qui sont conçus pour ça.

J’ai eu une coupure de courant ce matin (première fois depuis très longtemps :joy:), et tout a repris sans accroc alors que j’ai une base de données bien chargée.

Si @jean_bruder doit investir dans quelque chose, c’est plutôt dans un mini-PC robuste, je dirais :stuck_out_tongue:

Le Beelink mini S13 est une très bonne référence que je conseille (16 Go de RAM, CPU Intel N150 basse consommation, 512 Go de SSD). C’est ce que je propose via le kit de démarrage mais ça se trouve sur plein d’autres sites :wink:

1 « J'aime »