Wenn dies dein erster Besuch hier ist, lies bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich vermutlich registrieren, bevor du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um den Registrierungsprozess zu starten. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.
Super danke! Hättest noch n Tipp, wie man die IDs automatisiert ändern kann?
Also zB für alle Items die mit wp. starteten sollen jetzt die ID von den entsprechenden duw.wp. erhalten..?
bisher nutze ich SHNG mit 1.7.2.master --- database 1.5.9
auf dem Testsystem läuft SHNG 1.8.1.master --- database 1.5.15
gibt es eine Möglichkeit die Datenbank von 1.5.9 zu übernehmen/importieren? Ich habe versucht die Datei von einem System auf das andere zu kopieren --> der Kopiervorgang hat funktioniert, aber die Datenbank wird nicht erkannt (das WebIF wird nicht geladen).
Bei SQLite3: Vor dem kopieren unbedingt SmartHomeNG beenden. Anschließend den Inhalt des Verzeichnisses ../var/db aus der alten Installation in das Verzeichnis ../var/db der neuen Installation kopieren. Sicherstellen, dass die Item Definitionen der neuen Installation dazu passen (also der alten Installation entsprechen) und dann die neue Installation von SmartHomeNG starten.
Viele Grüße
Martin
There is no cloud. It's only someone else's computer.
Ich hatte mir in den letzten Versionen eine eigene Datenbank in MYSQL angelegt und die mit Daten gefüttert und dargestellt.
Seit dem Umstieg auf 1.8.1 gelingt mir der Zugriff nicht mehr, irgendeine "partition" wird verlangt.
Was mache ich falsch?
Du darfst bei der Konfiguration der Datenbank kein Leerzeichen hinter dem Doppelpunkt haben!
Außerdem passt was bei deinem eigenen Plugin offensichtlich mit den Einrückungen in Zeile 308 nicht.
Ich habe auf 1.8.2 geupdatet und finde jetzt sowas im Log:
Code:
2021-03-23 19:03:52 ERROR plugins.database.Remove old Method plugins.database.Remove old exception: local variable 'item_id' referenced before assignment
Traceback (most recent call last):
File "/usr/local/smarthome/plugins/database/__init__.py", line 1149, in remove_older_than_maxage
item_id = self.id(item, create=False)
File "/usr/local/smarthome/plugins/database/__init__.py", line 316, in id
if id is None and create == True:
UnboundLocalError: local variable 'id' referenced before assignment
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/smarthome/lib/scheduler.py", line 664, in _task
obj()
File "/usr/local/smarthome/plugins/database/__init__.py", line 1151, in remove_older_than_maxage
if item_id is None:
UnboundLocalError: local variable 'item_id' referenced before assignment
Kann ich noch etwas liefern, was hilft?
Etwas später findet sich noch:
Code:
2021-03-23 19:05:23 ERROR lib.db Can not execute query: DELETE FROM log WHERE (item_id = ? ) AND (time = ? OR 1 = ? ) AND (time > ? OR 1 = ? ) AND (time < ? OR 1 = ? ) AND (changed = ? OR 1 = ? ) AND (changed > ? OR 1 = ?) AND (changed < ? OR 1 = ? ); (args [3, None, 1, None, 1, 1613844318276, 0, None, 1, None, 1, None, 1]): database is locked
2021-03-23 19:05:23 ERROR plugins.database Database: Error for query DELETE FROM log WHERE (item_id = 3 ) AND (time = None OR 1 = 1 ) AND (time > None OR 1 = 1 ) AND (time < 1613844318276 OR 1 = 0 ) AND (changed = None OR 1 = 1 ) AND (changed > None OR 1 = 1) AND (changed < None OR 1 = 1 ); : database is locked
2021-03-23 19:05:23 ERROR plugins.database.Remove old Method plugins.database.Remove old exception: database is locked
Traceback (most recent call last):
File "/usr/local/smarthome/lib/scheduler.py", line 664, in _task
obj()
File "/usr/local/smarthome/plugins/database/__init__.py", line 1161, in remove_older_than_maxage
self.deleteLog(item_id, time_end=timestamp_end, with_commit=False)
File "/usr/local/smarthome/plugins/database/__init__.py", line 624, in deleteLog
self._execute(self._prepare("DELETE FROM {log} WHERE " + condition), params, cur=cur)
File "/usr/local/smarthome/plugins/database/__init__.py", line 1227, in _execute
self._query(self._db.execute, query, params, cur)
File "/usr/local/smarthome/plugins/database/__init__.py", line 1257, in _query
raise e
File "/usr/local/smarthome/plugins/database/__init__.py", line 1254, in _query
tuples = func(self._prepare(query), params, cur=cur)
File "/usr/local/smarthome/lib/db.py", line 324, in execute
result = c.execute(stmt, args)
sqlite3.OperationalError: database is locked
Danke und Gruß
Derzeit zwischen Kistenauspacken und Garten anlegen.
Baublog im Profil.
nachdem mein Log-Table mittlerweile 2 GB erreicht hat, habe ich mich doch mal intesiver mit dem Inhalt beschäftigt und festgestellt, das viele Items kein Maxage gesetzt haben - Anzeige im WebIF. Im Feld duration gibt es einen Eintrag. Ich würde jetzt gern an Maxage setzen, damit der Cleanup-Job das regelmäßg beräumen kann.
In der Doku habe ich bisher nichts gefunden (order nich nach dem richtigen gesucht?)
Kann mir bitte jemand auf die Sprünge helfen?
Aber Vorsicht: Wenn Du das attribut setzt, beginnt shNG bzw das Plugin die Reinigungsaktion. Das lastet die DB ziemlich aus und blockiert ein Schreiben in die DB. Die Werte werden bei shNG zwischengespeichert und dann geschrieben, wenn die DB wieder "verfügbar" ist.
Ich danke Dir, das hab ich elegant überlesen , war nur bei cleanup(), was ohne Parameter nat. nicht viel bringt.
Ich nutze MariaDB 10.3. Werde jetzt den Paramter setzen und wenn das alles durch ist nochmal ein "optimize table " drüberjagen
Danke nochmal und einen schönen Sonntag noch
Gunnar
um dem Wunsch hier nachzugehen, suche ich nach einer Möglichkeit, den ältesten/ersten Eintrag eines Items bzw. der Item-ID zu finden.
Kann das Plugin das?
An die Nutzer des Plugins mit einer SQL Datenbank (vielleicht sogar auf nem NAS).. Wie lange dauert bei euch das finale Schreiben von Werten in die Datenbank beim Stoppen des Plugins?
Ich habe bemerkt, dass zB von meinem Macbook Pro nur ca. 8 Einträge pro Sekunde auf die MariaDB Datenbank auf dem Synology 1517+ geschrieben werden. Es braucht also eine Ewigkeit beim Stoppen von SHNG, bis alle Werte geschrieben sind.
Die Tabellen habe ich über phpmyadmin frisch optimiert. Wäre über Erfahrungswerte und Tipps froh. Danke!
Wir verarbeiten personenbezogene Daten über die Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen. Weitere Informationen findest Du in unserer Datenschutzerklärung.
Indem Du unten auf "ICH stimme zu" klickst, stimmst Du unserer Datenschutzerklärung und unseren persönlichen Datenverarbeitungs- und Cookie-Praktiken zu, wie darin beschrieben. Du erkennst außerdem an, dass dieses Forum möglicherweise außerhalb Deines Landes gehostet wird und bist damit einverstanden, dass Deine Daten in dem Land, in dem dieses Forum gehostet wird, gesammelt, gespeichert und verarbeitet werden.
Kommentar