Ankündigung

Einklappen
Keine Ankündigung bisher.

OH 2.5 Build 1491 und früher "Exception occurred while querying persistence service

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

    OH 2.5 Build 1491 und früher "Exception occurred while querying persistence service


    Moin an alle, vielleicht kann mir ja jemand bei diesem Fehler helfen. Ich stelle den Fehler nicht in Frage, der kann ja richtig sein, weil ich etwas falsch gemacht habe. Meine Frage lautet: Wie kann ich anhand der Fehlerbeschreibung auf das Item zurück schließen, damit ich den Wert richtig zuweisen kann? Einen String auf eine Nummer packen funktioniert nicht, ok verstanden, aber welches Item. Ich bin meine Items durchgegangen, bzw. meine Datenbank, ich sehe es nicht.
    2019-01-08 18:40:11.631 [ERROR] [ence.internal.PersistenceManagerImpl] - Exception occurred while querying persistence service 'jdbc': java.lang.String cannot be cast to java.lang.Number
    java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Number
    at org.openhab.persistence.jdbc.db.JdbcBaseDAO.getSta te(JdbcBaseDAO.java:474) ~[?:?]
    at org.openhab.persistence.jdbc.db.JdbcBaseDAO.doGetH istItemFilterQuery(JdbcBaseDAO.java:343) ~[?:?]
    at org.openhab.persistence.jdbc.internal.JdbcMapper.g etHistItemFilterQuery(JdbcMapper.java:154) ~[?:?]
    at org.openhab.persistence.jdbc.internal.JdbcPersiste nceService.query(JdbcPersistenceService.java:201) ~[?:?]
    at org.openhab.core.persistence.internal.QueryablePer sistenceServiceDelegate.query(QueryablePersistence ServiceDelegate.java:47) ~[?:?]
    at sun.reflect.GeneratedMethodAccessor93.invoke(Unkno wn Source) ~[?:?]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(De legatingMethodAccessorImpl.java:43) ~[?:?]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[?:?]
    at org.eclipse.smarthome.core.internal.common.Abstrac tInvocationHandler.invokeDirect(AbstractInvocation Handler.java:153) [102rg.eclipse.smarthome.core:0.11.0.201901030053]
    at org.eclipse.smarthome.core.internal.common.Invocat ion.call(Invocation.java:53) [102rg.eclipse.smarthome.core:0.11.0.201901030053]
    at java.util.concurrent.FutureTask.run(FutureTask.jav a:266) [?:?]
    at java.util.concurrent.ThreadPoolExecutor.runWorker( ThreadPoolExecutor.java:1149) [?:?]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:624) [?:?]
    at java.lang.Thread.run(Thread.java:748) [?:?]

    Danke schon mal für den Tipp
    Zuletzt geändert von agh; 11.01.2019, 21:12.

    #2
    Hallo,

    in welchem Zusammenhang taucht der Fehler auf?
    Wenn ich etwas orakeln darf, dann fällt mir zuerst ein, daß der verwendete/benötigte TABLE der Datenbank leer oder nicht vorhanden ist. Wird der Wert überhaupt in eine Datenbank geschrieben?
    Ein weiterer Versuch wäre, den Code (sitemap, rules, items, things) abschnittsweise zu reduzieren, bis der Fehler nicht mehr auftritt?

    Kommentar


      #3
      Hast Du ev. statt eines Punktes ein Komma bei einer Nummer eingeben dann könnte das unter Umständen auch als String interpretiert werden.
      Gruß

      Guido

      Kommentar


        #4
        Moin Heiko74,
        immer beim Neustart von OH, damit werden die Inhalte meiner Items wieder hergestellt (PersistenceManagerImpl). Es werden Werte in der DB abgelegt. Leer ist eigentlich keine Tabelle. Ich weiß halt nicht welches Item betroffen ist, dass würde die Suche deutlich vereinfachen. Nun kann ein String nicht auf eine Number gecastet werden oder umgekehrt. Auch die Zeile vor diesem Eintrag in der LOG-Datei ist leider nicht hilfreich, weil die Werte in Ordnung sind. Sitemap, Rules und Things dürften in diesem Fall irrelevant sein. Es funktioniert ja fast alles nach einem Neustart. Lediglich meine Einstellungen für meine Rollladen, die als Nummer abgespeichert werden und für die Anzeige gemappt werden, das funktioniert nicht richtig. Vielleicht hängt es damit zusammen vielleicht auch nicht

        Kommentar


          #5
          Hallo Höhlenbär,
          wenn ich wüsste, welches Item betroffen ist - bei ca. 100-150 - könnte ich die Frage beantworten. Ich bin ratlos. Vielleicht hängt es mit meinen RollladenMode zusammen. Da benutze ich eine MAP Datei in der Sitemap nutze ich Mappings
          Itemesbeispiel: Number OG_Musik_Roll_AutoMode "Rolladen Automatikmodus [MAP(rollerauto.map):%s]"
          Sitemap: Selection item=OG_Musik_Roll_AutoMode label="Automatikmode [%d]" mappings=[0="aus", 1="schliessen", 2="öffnen", 3="öffnen+schliessen"]
          Rollerauto.map:
          NULL=aus
          -=aus
          0=aus
          1=schliessen
          2=öffnen
          3=öffnen+schliessen

          Nachdem Neustart von OH fällt mir auf, dass der Wert für 'schliessen' "1.0" ins Item geschoben wird, obwohl in der DB "1" ist. Die Anführungszeichen hab ich gesetzt um die Werte zu kennzeichnen. Ich kann nicht beurteilen, ob es damit zusammen hängt.

          Kommentar


            #6
            Ev. würde es helfen wenn Du ,mal deine Items und deine Persiens postest aber benutze bitte die Codetags #

            Gruß

            Guido

            Kommentar


              #7
              Moin Guido,
              herzlichen Dank für die Unterstützung, aber sicher, dass ich das tun soll? Es wären so um die 300 Zeilen Code. Das finde ich ziemlich viel. Items Dateien dürfen leider nicht als Anhang hochgeladen werden. Ich könnte noch alles als zip packen. Es sei denn, Du meinst nicht alle Items. Aber hier schon mal meine Persistance:
              Code:
              Strategies{
              
              every30Sec : "30 * * * * ?"
              everyMinute : "0 * * * * ?"
              every5Minutes : "0 */5 * * * ?"
              every10Minutes : "0 */10 * * * ?"
              every15Minutes : "0 */15 * * * ?"
              every30Minutes : "0 */30 * * * ?"
              everyHour : "0 0 * * * ?"
              everyDay : "0 0 0 * * ?"
              default = everyChange
              }
              
              Items{
              // persist all items once a day and on every change and restore them from the db at startup
              gDG* : strategy = everyChange, everyUpdate, every10Minutes, restoreOnStartup
              gOG* : strategy = everyChange, everyUpdate, every10Minutes, restoreOnStartup
              gEG* : strategy = everyChange, everyUpdate, every10Minutes, restoreOnStartup
              gUG* : strategy = everyChange, everyUpdate, every10Minutes, restoreOnStartup
              gHaus* : strategy = everyChange, everyUpdate, every10Minutes, restoreOnStartup
              gGAR* : strategy = everyChange, everyUpdate, every10Minutes, restoreOnStartup
              gZeituhr* : strategy = everyChange, everyUpdate, restoreOnStartup
              gUrlaub* : strategy = everyChange, everyUpdate, restoreOnStartup
              // additionally, persist all temperature and weather values every hour
              gAllTemps*: strategy = every10Minutes //, restoreOnStartup
              //roller* : strategy = everyChange, every10Minutes, restoreOnStartup
              }
              Ich habe meine Items in eine Zip gepackt und hochgeladen: items.zip

              Grüße
              Andreas
              Zuletzt geändert von agh; 10.01.2019, 10:16. Grund: Ergänzung

              Kommentar


                #8
                Hallo,

                ich würde versuchen erst einmal eine Gruppe nach der anderen auszukommentieren und sehen aus welcher es kommt.
                Das sollte eigentlich keine Auswirkungen auf die DB haben. Ich denke nicht das diese Items dann aus der DB gelöscht werden. Und sollten nach dem Aktivieren wieder zur Verfügung stehen.(Bin mir da aber nicht sicher !!!!) Notfalls sichere Dir die DB vorher noch einmal.
                Gruß

                Guido

                Kommentar


                  #9
                  Moin Guido,
                  ich seh' schon, es wird mir wohl nichts anderes übrigbleiben. Die Items verbleiben alle in der Datenbank. Es werden nur Einträge angelegt. Eine Funktion zum Aufräumen (Unbenutzte Löschen) habe ich noch nicht gefunden, müsste ja in der PaperUI sein.
                  Danke Dir
                  Gruß Andreas
                  Zuletzt geändert von agh; 10.01.2019, 16:22.

                  Kommentar


                    #10
                    Der Fehler ist weg, hab 'nen Update auf das nächste Build gemacht und meine Mappings für meine Rollladen geändert weil aus der Datenbank 1.0 im Item eingetragen wird statt 1. Thema gelöst!! Wo kann ich den Gelöstknopf setzen?

                    Kommentar


                      #11
                      Zitat von agh Beitrag anzeigen
                      Wo kann ich den Gelöstknopf setzen?
                      Soweit ich weiß, kannst Du den Titel Des Anfangspostings editieren.

                      Kommentar


                        #12
                        Zitat von udo1toni Beitrag anzeigen
                        Soweit ich weiß, kannst Du den Titel Des Anfangspostings editieren.
                        Super Danke

                        Kommentar

                        Lädt...
                        X