Ankündigung

Einklappen
Keine Ankündigung bisher.

Nochmal SQLite Problem....

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Nochmal SQLite Problem....

    Kann sich jemand das hier noch einmal angucken:

    2016-10-17 17:50:57 WARNING Main WebSocket: protocol mismatch. Update your client: 192.168.178.133:50967
    2016-10-17 17:51:06 WARNING Main SQLite: Problem with '("UPDATE OR IGNORE cache SET _start=1476719466383, _value=21.9 WHERE _item='EG.Raum8.Heizung.ist';",)': attempt to write a readonly database
    2016-10-17 17:51:09 WARNING Main SQLite: problem updating EG.Raum2.Heizung.ist: attempt to write a readonly database
    2016-10-17 17:51:09 WARNING Main SQLite: Problem with '("UPDATE OR IGNORE cache SET _start=1476719469585, _value=21.12 WHERE _item='EG.Raum2.Heizung.ist';",)': attempt to write a readonly database
    2016-10-17 17:51:10 WARNING Main SQLite: problem updating EG.Raum2.Heizung.stellwert: attempt to write a readonly database
    2016-10-17 17:51:10 WARNING Main SQLite: Problem with '("UPDATE OR IGNORE cache SET _start=1476719470022, _value=21.6 WHERE _item='EG.Raum2.Heizung.stellwert';",)': attempt to write a readonly database
    2016-10-17 17:51:15 WARNING Main SQLite: problem updating EG.Raum8.Heizung.stellwert: attempt to write a readonly database
    2016-10-17 17:51:15 WARNING Main SQLite: Problem with '("UPDATE OR IGNORE cache SET _start=1476719475226, _value=7.5 WHERE _item='EG.Raum8.Heizung.stellwert';",)': attempt to write a readonly database
    2016-10-17 17:51:21 WARNING Main SQLite: problem updating EG.Raum7.Heizung.ist: attempt to write a readonly database
    2016-10-17 17:51:21 WARNING Main SQLite: Problem with '("UPDATE OR IGNORE cache SET _start=1476719481012, _value=21.46 WHERE _item='EG.Raum7.Heizung.ist';",)': attempt to write a readonly database


    Der Effekt ist, dass ich im Iphone zwar die Smartvisu Seiten im Safari öffnen kann (inklusive aller Werte also alles gut) aber wenn ich von der gleichen Seite einen Link auf den Homescreen lege (Also dann Vollbildmodus), gibt es eine Warnung das unterschiedliche Protokolle benutzt werden. Das ist aber nicht der Fall.
    Das ganze ist von dem kompletten Image ausgehend. jetzt habe ich diese Fehlermeldungen im Log entdeckt....

    Marc

    #2
    Steht doch da - "attempt to write a readonly database", er versucht, auf eine schreibgeschützte Datenbank zu schreiben.

    Erste Vermutung: prüfe mal die Verzeichnis- und Dateirechte. Wem gehören die Datenbankdateien, unter welchem User läuft sh.py?

    (Die Protokollgeschichte wird unabhängig davon hier schon diskutiert, schau mal die aktiven Themen durch)

    Kommentar


      #3
      Das wäre ja die Frage. Wo finde ich die entsprechende Datenbank wo SQLite reinschreibt?

      Marc

      Kommentar


        #4
        Schau mal unter <smarthome>/var/db - oder unter dem alternativen Pfad, der in der /etc/plugin.conf unter [SQL] eingetragen ist.
        /tom

        Kommentar


          #5
          Mit den Rechten sollte alles passen. Hab jetzt auch erstmal alles auf 777 gestellt.

          Trotzdem diese Meldungen im Log:
          1. 2016-10-18 12:31:42 INFO Main VISU: Websocket handler uses protocol version 4
          2. 2016-10-18 12:31:43 WARNING Main WebSocket: protocol mismatch. Update your client: 192.168.178.141:52036
          3. 2016-10-18 12:31:58 DEBUG Scheduler env_stat next time: 2016-10-18 12:36:58+02:00
          4. 2016-10-18 12:32:19 INFO Main VISU: Websocket handler uses protocol version 4
          5. 2016-10-18 12:32:19 WARNING Main WebSocket: protocol mismatch. Update your client: 192.168.178.141:52050
          6. 2016-10-18 12:32:43 INFO Main VISU: Websocket handler uses protocol version 4
          7. 2016-10-18 12:32:43 WARNING Main WebSocket: protocol mismatch. Update your client: 192.168.178.141:52058
          8. 2016-10-18 12:32:43 WARNING Main Client 192.168.178.141:52058 requested invalid item: EG.Raum1.Heizung.ist.avg.24h.now.100
          9. 2016-10-18 12:32:52 INFO Main VISU: Websocket handler uses protocol version 4
          10. 2016-10-18 12:32:53 WARNING Main WebSocket: protocol mismatch. Update your client: 192.168.178.141:52060
          11. 2016-10-18 12:32:53 WARNING Main Client 192.168.178.141:52060 requested invalid item: EG.Raum1.Heizung.ist.avg.24h.now.100
          12. 2016-10-18 12:32:57 INFO Main VISU: Websocket handler uses protocol version 4
          13. 2016-10-18 12:32:58 WARNING Main WebSocket: protocol mismatch. Update your client: 192.168.178.141:52062
          14. 2016-10-18 12:32:58 WARNING Main Client 192.168.178.141:52062 requested invalid item: EG.Raum1.Heizung.ist.avg.24h.now.100
          15. 2016-10-18 12:33:16 INFO CP Server Thread-8 192.168.178.141 - admin [18/Oct/2016:12:33:16] "GET / HTTP/1.1" 200 4145 "" "Mozilla/5.0 (iPhone; CPU iPhone OS 10_0_2 like Mac OS X) AppleWebKit/602.1.50 (KHTML, like Gecko) Version/10.0 Mobile/14A456 Safari/602.1"

          Was heißt "update your Client"?

          Kommentar


            #6
            Das bedeutet, das SmartHomeNG festgestellt hat, das der Client (Dein Webbrowser) eine alte Protokollversion nutzen möchte. Könnte es sein, das Dein SmartVISU nicht auf dem aktuellen Stand ist?

            Kommentar


              #7
              Eigentlich nicht, ich hatte extra die neue Version runter geladen (2.8)
              Wieso fordert der Webbrowser eine Protokollversion an? Ich dachte das passiert alles in dem Pi. Zwischen SmarthomeNG und SmartVisu.
              Und, wieso kommt diese Meldung nur wenn ich Safari im Vollbildmodus direkt vom Homescreen aus starte?
              Und nicht, wenn ich erst Safari öffne und dann SmartVisu aufrufe?

              Grüße, Marc
              Zuletzt geändert von schuma; 18.10.2016, 14:07.

              Kommentar


                #8
                Zitat von schuma Beitrag anzeigen
                Wieso fordert der Webbrowser eine Protokollversion an? Ich dachte das passiert alles in dem Pi. Zwischen SmarthomeNG und SmartVisu.
                Die smartVISU kommuniziert serverseitig nicht mit SmarthomeNG. Die Kommunikation läuft direkt zwischen deinem Browser und SmarthomeNG.
                Aber den Programmcode in Form eines JavaScripts wird von der smartVISU geliefert.

                Zitat von schuma Beitrag anzeigen
                Und, wieso kommt diese Meldung nur wenn ich Safari im Vollbildmodus direkt vom Homescreen aus starte?
                Und nicht, wenn ich erst Safari öffne und dann SmartVisu aufrufe?
                Dieser Beitrag gibt die Antwort und dieser einen Workaround.

                Kommentar


                  #9
                  Hallo, diesen Workaround kenne ich. Immerhin habe ich nun kapiert warum das überhaupt funktioniert!
                  Aber in meinem jetzigen Fall, löst der Workaround nicht mein Problem. Das äußert sich auch etwas anders. Wärend es früher nur die Index Seite war die keine Daten geliefert hat, liefert jetzt keine der Seiten irgendwelche Daten an die entsprechenden Symbole.
                  Komisch ist auch , das es mit einem alten Ipad funktioniert, und auch mit einem zweiten Iphone nicht....

                  P.S. Ich hasse solche Probleme die eigentlich funktionieren müssten aber es nie tun!!!!

                  Kommentar


                    #10
                    Die Ursache dürfte aber dieselbe sein, die Scripts werden nicht aktualisiert.
                    Bei einer kurzen Google-Suche hatte ich eine Lösung gesehen, wie der Cache gelöscht werden kann. Diee funktioniert aber angeblivh mit iOS 6 nicht mehr.

                    Vielleifht hast du ja Lust, genauer danach zu googeln. Ich habe keine iDevices.
                    Es ist eindeutg ein iOS-Bug, also eigentlih keine Aufgabe für SH.py oder smartVISU. Wie im anderen Thread geschrieben, würde ich aber natürlich einen Workaround integrieren, wenn du einen findest.

                    Kommentar


                      #11
                      Hallo smai,
                      ich werde mal im Netz suchen!
                      Ich habe jetzt allerdings alles neu aufgesetzt. Mit dem kompletten Image 1.2 für den Pi. Lief alles sofort problemlos. Auch die Probleme mit dem KNXD bei mir sind "hoffentlich" erstmal beseitigt.
                      Ich mache jetzt erstmal tausend Kreuze und werde mich dann ab morgen auf Websuche begeben.

                      Grüße, Marc

                      Kommentar


                        #12
                        Zitat von schuma Beitrag anzeigen
                        Und, wieso kommt diese Meldung nur wenn ich Safari im Vollbildmodus direkt vom Homescreen aus starte?
                        Und nicht, wenn ich erst Safari öffne und dann SmartVisu aufrufe?

                        Grüße, Marc
                        Beim Start vom Homesxreen verwendet das ios Device gecachte Informationen. Ich habe einfach das Homescreen Icon gelöscht und aus dam Browser neu angelegt. Danach liefs.
                        Viele Grüße
                        Martin

                        There is no cloud. It's only someone else's computer.

                        Kommentar


                          #13
                          Bei mir nicht:-(

                          Kommentar


                            #14
                            Also, ich habe hier mal zwei Seiten gefunden:

                            http://stackoverflow.com/questions/8...the-homescreen
                            http://stackoverflow.com/questions/8...app-to-refresh

                            Der zweite Link sieht vielversprechend aus:

                            Code:
                            Create a cache.manifest that instructs it never to cache resources referenced by the main html page:  
                             CACHE MANIFEST  # Version 1.0000  NETWORK: *  
                            Use it in your index.html:  
                             <!DOCTYPE html> <html manifest="cache.manifest">  
                            Now whenever you change that manifest file -- for example, by increasing the version number in that comment -- the browser will redownload index.html also.
                            
                            Ensure your page gets reloaded when the cache is updated: 
                             <script> function updateSite(event) {     window.location.reload(); } window.applicationCache.addEventListener('updateready', updateSite, false); </script>
                            Können wir damit was anfangen?
                            Ich habe es jetzt nicht getestet, sieht aber aus, als ob es funktionieren könnte....

                            Kommentar


                              #15
                              Auch nicht schlecht:

                              I got the solution!

                              But first the problem: iPad and iPhone is not refreshing the cache when opening the app. Even deleting the app, clearing safari cache, restarting device etc. etc. doesnt work.

                              And here is the solution ... taadaa !

                              Your manifest-file MUST change. If it is changed, iPad/iPhone will reload the cache. So just write a version number in your manifest file and change it when you changed something:
                              # Version: 1.2
                              So a full manifest file could look like this:
                              CACHE MANIFEST

                              # Version 1.5

                              NETWORK:
                              *

                              CACHE:
                              index.html
                              jquery-1.7.2.min.js
                              images/logo.jpg
                              It even reloads things like images that are not written into the manifest file. I tested it a several times.

                              Btw. dont forget to check your manifest-file with http://manifest-validator.com

                              My source is this very cool how to about offline web applications: http://gregsramblings.com/2012/05/28...-cache-how-to/

                              It also says that you maybe need to start your app twice:
                              If the manifest was updated, the browser will download all of the files in the cached file list, BUT, the original content will have already loaded at this point (remember that it’s already cached, so it loads super fast!).
                              But it worked for me always on first attempt.
                              Marc

                              Kommentar

                              Lädt...
                              X