Hallo zusammen,
ich habe bei mir folgendes reproduzierbares Problem auf einem Raspian (Image 1.8.2) in Verbindung mit dem Database plugin: Sobald das Ethernet wegbricht, durch ein Restart des Routers oder einfach durch kurzes Abziehen des Kabels, startet anschließend das Ethernet des Raspberry Pis nicht wieder selbständig hoch. Wenn smarthomeNG ohne database plugin läuft, funktioniert das einwandfrei.
Der Effekt ist sehr lästig und bedeutet, dass der Raspy manuell neu gestartet werden muss.
Das database plugin ist so konfiguriert, dass es eine externe DB auf einer Synology nutzt, sprich die DB auch über Ethernet angebunden ist. Ich habe die Vermutung, dass hier das Problem liegt. Sobald das Ethernet nicht verfübar ist, laufen alle Anfragen an die DB (Lesen und Schreiben) in ein Timeout. Diese permanenten Anfragen mit Timeout scheinen irgendwie die Auslastung so hoch zu drehen, dass das Ethernet nicht wieder von alleine hochfährt.
Meine Fragen an Euch:
1) Hat jemand ein ähnliches Setup (Raspberry + Database plugin via per Ethernet angebundener DB) und kann das Problem bestätigen?
2) Seht Ihr die Möglichkeit, die DB Anfragen im plugin zu blockieren, solange in dieser Konfiguration mit exterener DB das Etherent nicht verfügbar ist? Ziel dieser Maßnahme wäre, das System nicht komplett auszulasten.
Noch ein paar Infos:
plugin.yaml
logfile während nicht verfügbarem Ethernet:
Danke und Gruß
Alex
ich habe bei mir folgendes reproduzierbares Problem auf einem Raspian (Image 1.8.2) in Verbindung mit dem Database plugin: Sobald das Ethernet wegbricht, durch ein Restart des Routers oder einfach durch kurzes Abziehen des Kabels, startet anschließend das Ethernet des Raspberry Pis nicht wieder selbständig hoch. Wenn smarthomeNG ohne database plugin läuft, funktioniert das einwandfrei.
Der Effekt ist sehr lästig und bedeutet, dass der Raspy manuell neu gestartet werden muss.
Das database plugin ist so konfiguriert, dass es eine externe DB auf einer Synology nutzt, sprich die DB auch über Ethernet angebunden ist. Ich habe die Vermutung, dass hier das Problem liegt. Sobald das Ethernet nicht verfübar ist, laufen alle Anfragen an die DB (Lesen und Schreiben) in ein Timeout. Diese permanenten Anfragen mit Timeout scheinen irgendwie die Auslastung so hoch zu drehen, dass das Ethernet nicht wieder von alleine hochfährt.
Meine Fragen an Euch:
1) Hat jemand ein ähnliches Setup (Raspberry + Database plugin via per Ethernet angebundener DB) und kann das Problem bestätigen?
2) Seht Ihr die Möglichkeit, die DB Anfragen im plugin zu blockieren, solange in dieser Konfiguration mit exterener DB das Etherent nicht verfügbar ist? Ziel dieser Maßnahme wäre, das System nicht komplett auszulasten.
Noch ein paar Infos:
plugin.yaml
Code:
database: plugin_name: Database driver: pymysql connect: - host:192.Z.X.Y - user:XXX - passwd:YYY - db:smarthome_db count_logentries: true precision: -1
Code:
2021-08-24 10:41:57 WARNING plugins.database Skipping dump, since an other database operation running! Data is buffered and dumped later. 2021-08-24 10:42:45 WARNING plugins.database Skipping dump, since an other database operation running! Data is buffered and dumped later. 2021-08-24 10:45:07 WARNING plugins.database Skipping dump, since an other database operation running! Data is buffered and dumped 2021-08-24 10:46:21 WARNING plugins.database Skipping dump, since an other database operation running! Data is buffered and dumped later. 2021-08-24 10:46:52 WARNING plugins.database Skipping dump, since an other database operation running! Data is buffered and dumped later. 2021-08-24 10:48:01 WARNING plugins.database Skipping dump, since an other database operation running! Data is buffered and dumped later. 2021-08-24 10:48:56 WARNING plugins.database Skipping dump, since an other database operation running! Data is buffered and dumped later. 2021-08-24 10:49:09 WARNING plugins.database Skipping dump, since an other database operation running! Data is buffered and dumped later. 2021-08-24 10:49:59 WARNING plugins.database Skipping dump, since an other database operation running! Data is buffered and dumped later. 2021-08-24 10:50:12 WARNING lib.db Database [Database]: Connection error (2013, 'Lost connection to MySQL server during query ([Errno 101] Das Netzwerk ist nicht erreichbar)') 2021-08-24 10:50:12 ERROR lib.db Can not execute query: SELECT 1 (args OrderedDict()): (0, '') 2021-08-24 10:50:12 WARNING lib.db Database [Database]: Connection error (0, '') 2021-08-24 10:50:12 ERROR lib.db Can not execute query: SELECT 1 (args OrderedDict()): (0, '') 2021-08-24 10:50:12 WARNING lib.db Database [Database]: Connection error (0, '') 2021-08-24 10:50:12 ERROR lib.db Can not execute query: SELECT 1 (args OrderedDict()): (0, '') 2021-08-24 10:50:12 WARNING lib.db Database [Database]: Connection error (0, '') 2021-08-24 10:50:12 ERROR lib.db Can not execute query: SELECT 1 (args OrderedDict()): (0, '') 2021-08-24 10:50:12 WARNING lib.db Database [Database]: Connection error (0, '') 2021-08-24 10:50:12 ERROR lib.db Can not execute query: SELECT 1 (args OrderedDict()): (0, '') 2021-08-24 10:50:12 WARNING lib.db Database [Database]: Connection error (0, '') 2021-08-24 10:50:12 ERROR lib.db Can not execute query: SELECT 1 (args OrderedDict()): (0, '') 2021-08-24 10:50:12 WARNING lib.db Database [Database]: Connection error (0, '') 2021-08-24 10:50:12 ERROR lib.db Can not execute query: SELECT 1 (args OrderedDict()): (0, '') 2021-08-24 10:50:12 WARNING lib.db Database [Database]: Connection error (0, '') 2021-08-24 10:50:12 ERROR lib.db Can not execute query: SELECT 1 (args OrderedDict()): (0, '') 2021-08-24 10:50:12 WARNING lib.db Database [Database]: Connection error (0, '') 2021-08-24 10:50:12 ERROR lib.db Can not execute query: SELECT 1 (args OrderedDict()): (0, '') 2021-08-24 10:50:12 WARNING lib.db Database [Database]: Connection error (0, '') 2021-08-24 10:50:12 WARNING lib.db fetchone: No cursor defined for stmt SELECT 1 with params () 2021-08-24 10:50:12 WARNING lib.db fetchone: No cursor defined for stmt SELECT id, name, time, val_str, val_num, val_bool, changed from item WHERE name = :id; with params {'id': 'Enocean.actor2.power'} 2021-08-24 10:50:14 ERROR lib.db Database [Database]: Could not connect to the database using 'pymysql': (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:14 WARNING lib.db Database [Database]: Connection error (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:14 ERROR lib.db Database [Database]: Could not connect to the database using 'pymysql': (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:14 WARNING lib.db Database [Database]: Connection error (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:14 ERROR lib.db Database [Database]: Could not connect to the database using 'pymysql': (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:14 WARNING lib.db Database [Database]: Connection error (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:15 ERROR lib.db Database [Database]: Could not connect to the database using 'pymysql': (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:15 WARNING lib.db Database [Database]: Connection error (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:16 ERROR lib.db Database [Database]: Could not connect to the database using 'pymysql': (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:16 WARNING lib.db Database [Database]: Connection error (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:16 ERROR lib.db Database [Database]: Could not connect to the database using 'pymysql': (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:16 WARNING lib.db Database [Database]: Connection error (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:17 ERROR lib.db Database [Database]: Could not connect to the database using 'pymysql': (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:17 WARNING lib.db Database [Database]: Connection error (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:17 ERROR lib.db Database [Database]: Could not connect to the database using 'pymysql': (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:17 WARNING lib.db Database [Database]: Connection error (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:17 ERROR lib.db Database [Database]: Could not connect to the database using 'pymysql': (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:17 WARNING lib.db Database [Database]: Connection error (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:17 ERROR lib.db Database [Database]: Could not connect to the database using 'pymysql': (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:17 WARNING lib.db Database [Database]: Connection error (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:18 ERROR lib.db Database [Database]: Could not connect to the database using 'pymysql': (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:18 WARNING lib.db Database [Database]: Connection error (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:18 ERROR lib.db Database [Database]: Could not connect to the database using 'pymysql': (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:18 WARNING lib.db Database [Database]: Connection error (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:18 ERROR lib.db Database [Database]: Could not connect to the database using 'pymysql': (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:18 WARNING lib.db Database [Database]: Connection error (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:18 ERROR lib.db Database [Database]: Could not connect to the database using 'pymysql': (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:18 WARNING lib.db Database [Database]: Connection error (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:18 ERROR lib.db Database [Database]: Could not connect to the database using 'pymysql': (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:18 WARNING lib.db Database [Database]: Connection error (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:18 ERROR lib.db Database [Database]: Could not connect to the database using 'pymysql': (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:18 WARNING lib.db Database [Database]: Connection error (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)") 2021-08-24 10:50:18 ERROR lib.db Database [Database]: Could not connect to the database using 'pymysql': (2003, "Can't connect to MySQL server on '192.168.2.103' ([Errno 101] Das Netzwerk ist nicht erreichbar)")
Danke und Gruß
Alex
Kommentar